当管道 sed 命令时,输出变为全部空格

当管道 sed 命令时,输出变为全部空格

这是我在课堂上做的一个实验,教授告诉我使用 sed 通过将几个 sed 命令连接在一起来删除所有标点符号和双倍空格。当我将命令连接在一起时,我的输出是一个充满空字符的文件。他列出的命令链如下:

sed '<expr1a>' usdeclar.txt | sed '<expr1b>' | sed '<expr1c>' | sed '<expr1d>' | sed <expr1e>' | sed '<expr1f>' | sed '<expr1g>' | sed '<expr1h>' > sed_edits.txt

我的命令链:

sed 's/./ /g' usdeclar.txt | sed 's/,/ /g' | sed 's/./ /g' | sed 's/:/ /g' | sed 's/;/ /g' | sed 's/-/ /g' | sed 's/  / /g' | sed 's/""/ /g' >sed_edits.txt

cat sed_edits.txt
output: 165 lines of blank spaces.

我的命令链有什么问题?如果我单独运行 sed 命令,输出是正常的,但教授特别希望我像这样运行命令,每当我添加多个 sed 命令时,输出都是 165 行空格。我对一切都还很陌生,所以我确信这是我犯的一个简单的错误。感谢花时间阅读这篇文章的任何人!

相关内容