是否有一个Unix命令可以将一些字符串数据预先添加到文本文件中?
类似于:
prepend "to be prepended" text.txt
发布于 2015-01-15 02:52:44
printf '%s\n%s\n' "to be prepended" "$(cat text.txt)" >text.txt
发布于 2012-05-15 00:50:07
这是一种可能性:
(echo "to be prepended"; cat text.txt) > newfile.txt
您可能不容易绕过中间文件。
替代方案(使用shell转义可能会很麻烦):
sed -i '0,/^/s//to be prepended/' text.txt
发布于 2012-05-15 00:52:06
这将用于形成输出。-表示标准输入,通过echo中的管道提供。
echo -e "to be prepended \n another line" | cat - text.txt
要重写文件,需要一个临时文件,因为它不能通过管道返回到输入文件。
echo "to be prepended" | cat - text.txt > text.txt.tmp
mv text.txt.tmp text.txt
https://stackoverflow.com/questions/10587615
复制相似问题