在 bash 脚本中,我想将一些行写入文本文件,但该文件之前已经使用过并且其中有文本。所以我想从文件中的某个行号开始回显其中的一些附加文本。
我想要这样的东西:
echo -fromLineNumber 33 -e "anything" >> textPath
答案1
您可以使用sed
在特定行写入。
尝试这个:
sed -i '33ianything' textpath
或者
sed -i '33i\anything' textpath
它将在第 33 行插入“anything”。
答案2
要保留前 32 行并在后面添加新文本:
head -n 32 oldfile > newfile
echo anything >> newfile
echo goes >> newfile
echo here >> newfile
要在文件的第 32 行之后插入一些文本:
sed -e '32s/$/\nanything\ngoes\nhere/' oldfile > newfile