Bash
將文件內容和自定義文本的連接輸出到新文件中
對不起,一個菜鳥問題,但是,我是菜鳥,所以……
給定兩個文件,比如
file1
contenttext1
和file2
contenttext2
,我想創建一個file3
帶有 content的新文件text1newtextinbetweentext2
。我希望有一些命令,比如cat file1 (dontknowwhat "newtextinbetween") file2 > file3
有沒有
dontknowwhat
可以做我想做的事?如果沒有,最好的方法是什麼?
另一種方法是使用程序替換:
cat file1 <(echo "newtextinbetween") file2 > file3
編輯:如果您不
echo
添加換行符,請echo -n
改用。
這裡有兩種方法:
- 將命令分組
$ { cat file1; echo "newtextinbetween"; cat file2; } > file3 $ cat file3 text1 newtextinbetween text2
- 使用子外殼
$ ( cat file1; echo "newtextinbetween"; cat file2 ) > file3 $ cat file3 text1 newtextinbetween text2
- 使用命令替換
$ printf '%s\nnewtextinbetween\n%s\n' "$(cat file1)" "$(cat file2)" > file3 $ cat file3 text1 newtextinbetween text2
如果您不想要每個塊之間的換行符,您可以執行以下操作:
$ printf '%snewtextinbetween%s\n' "$(cat file1)" "$(cat file2)" > file3 $ cat file3 text1newtextinbetweentext2