因此,可以使用 cat 轻松地在 bash 中加入文件:
cat *.txt > all.txt
Run Code Online (Sandbox Code Playgroud)
但是如果想在输入文件之间插入一些东西,比如换行怎么办?
需要 GNU sed
:
sed -s '$G' *.txt > all.txt
Run Code Online (Sandbox Code Playgroud)
在每个文件后附加一行 8 个破折号和一个换行符
sed -s '$a--------' *.txt
Run Code Online (Sandbox Code Playgroud)
你可以使用你的 sed '$d'
与这些相比:
在每个文件前插入一行破折号:
sed -s '1i--------' *.txt
Run Code Online (Sandbox Code Playgroud)
做同样的事情,但在破折号后没有换行符:
sed -s '1s/^/--------/' *.txt
Run Code Online (Sandbox Code Playgroud)
在每个文件的最后一行末尾放置一行破折号:
sed -s '$s/$/--------/' *.txt
Run Code Online (Sandbox Code Playgroud)
用花括号将每个文件括起来:
sed -s -e '1i{' -e '$a}' *.txt
Run Code Online (Sandbox Code Playgroud)
作为带子壳的单衬:
( for i in *.txt ; do cat $i ; echo 'separator here' ; done ) >all.txt
Run Code Online (Sandbox Code Playgroud)
下面是 subshell 执行的内容,分为脚本样式的行:
对于我在 *.txt 做 猫$i echo '分隔符放在这里' 完毕
在这个例子中,分隔符就像一个页脚;通过echo
在cat
.
归档时间: |
|
查看次数: |
5625 次 |
最近记录: |