linux - Bash - 如何从给定的文本文件中删除所有空格?

我想删除给定文本文件中的所有空格。

有没有可用的shell命令?

或者,如何使用 sed 来达到这个目的?

我想要类似下面的东西:

$ cat hello.txt | sed ....

我试过这个:cat hello.txt | sed 's///g' .

但它只删除空格,而不是制表符。

谢谢。

最佳答案

$ man tr
NAME
    tr - translate or delete characters

SYNOPSIS
    tr [OPTION]... SET1 [SET2]

DESCRIPTION
   Translate, squeeze, and/or delete characters from standard 
   input, writing to standard output.

为了删除包括换行符在内的所有空格,您可以尝试:

cat file.txt | tr -d " \t\n\r" 

您还可以使用 tr 定义的字符类(归功于 htompkins 评论):

cat file.txt | tr -d "[:space:]"

例如,为了只删除水平空白:

cat file.txt | tr -d "[:blank:]"

https://stackoverflow.com/questions/9953448/

相关文章:

linux - 如何从文件中提取单个字节 block ?

python - 为什么 ~True 结果是-2?

python - 在 Python 中拆分空字符串时,为什么 split() 返回一个空列表,而 s

python - 如何使用 Python 的 timeit 为代码段计时以测试性能?

python - 在 Python 中转义 HTML 的最简单方法是什么?

c++ - Netbeans 7.2 显示 "Unable to resolve identifie

linux - Git 状态忽略行尾/相同文件/windows & linux 环境/dropbox

linux - 如何查找几分钟前访问/创建的文件

linux - 带有单引号和双引号的 bash 别名命令

python - SQLAlchemy:打印实际查询