sed 正在将字符添加到单词的开头与结尾
sed is adding character to start of word vs end
所以我想添加一个“!”从我的 placesCap 文件到我的 placesCapEx 文件中每个单词的末尾
这是它的样子:
Yugoslavian
Zambia
Zambian
Zomba
这就是我想要的样子:
Yugoslavian!
Zambia!
Zambian!
Zomba!
我已经试过了 sed 's/$/\!/' Wordlists/placesCap > Wordlists/placesCapEx
只是 sed 's/$/!/' Wordlists/placesCap > Wordlists/placesCapEx
当我 运行 然后 cat Wordlists/placesCapEx
它输出时会发生什么
!ugoslavian
!ambia
!ambian
!omba
我做了一些研究,有人说它是 Unix 的东西,但他们从未详细说明
您的更简单的 sed 命令应该适用于行尾是单个换行符的文本文件。您可能在这里有 "dos" 格式文件(回车 return / 换行)。
考虑:
$ cat zippy
Zippy
$ od -c zippy
0000000 Z i p p y \r \n
0000007
$ sed 's/$/!/' zippy
!ippy
$ sed 's/$/!/' zippy | od -c
0000000 Z i p p y \r ! \n
0000010
您正在终端上看到 \r 的效果:将光标移动到行首,打印“!”,换行符转到下一行。
要处理 \r\n 对作为行尾字符的存在,您可以尝试:
$ sed 's/\r*$/!/' zippy
Zippy!
...假设您的 sed 像我的 (GNU sed 4.2.2) 一样尊重 \r。
所以我想添加一个“!”从我的 placesCap 文件到我的 placesCapEx 文件中每个单词的末尾
这是它的样子:
Yugoslavian
Zambia
Zambian
Zomba
这就是我想要的样子:
Yugoslavian!
Zambia!
Zambian!
Zomba!
我已经试过了 sed 's/$/\!/' Wordlists/placesCap > Wordlists/placesCapEx
只是 sed 's/$/!/' Wordlists/placesCap > Wordlists/placesCapEx
当我 运行 然后 cat Wordlists/placesCapEx
它输出时会发生什么
!ugoslavian
!ambia
!ambian
!omba
我做了一些研究,有人说它是 Unix 的东西,但他们从未详细说明
您的更简单的 sed 命令应该适用于行尾是单个换行符的文本文件。您可能在这里有 "dos" 格式文件(回车 return / 换行)。
考虑:
$ cat zippy
Zippy
$ od -c zippy
0000000 Z i p p y \r \n
0000007
$ sed 's/$/!/' zippy
!ippy
$ sed 's/$/!/' zippy | od -c
0000000 Z i p p y \r ! \n
0000010
您正在终端上看到 \r 的效果:将光标移动到行首,打印“!”,换行符转到下一行。
要处理 \r\n 对作为行尾字符的存在,您可以尝试:
$ sed 's/\r*$/!/' zippy
Zippy!
...假设您的 sed 像我的 (GNU sed 4.2.2) 一样尊重 \r。