首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用于将文本预先添加到文件的Unix命令

用于将文本预先添加到文件的Unix命令
EN

Stack Overflow用户
提问于 2012-05-15 00:45:52
回答 16查看 91.8K关注 0票数 156

是否有一个Unix命令可以将一些字符串数据预先添加到文本文件中?

类似于:

代码语言:javascript
复制
prepend "to be prepended" text.txt
EN

回答 16

Stack Overflow用户

发布于 2015-01-15 02:52:44

代码语言:javascript
复制
printf '%s\n%s\n' "to be prepended" "$(cat text.txt)" >text.txt
票数 178
EN

Stack Overflow用户

发布于 2012-05-15 00:50:07

这是一种可能性:

代码语言:javascript
复制
(echo "to be prepended"; cat text.txt) > newfile.txt

您可能不容易绕过中间文件。

替代方案(使用shell转义可能会很麻烦):

代码语言:javascript
复制
sed -i '0,/^/s//to be prepended/' text.txt
票数 40
EN

Stack Overflow用户

发布于 2012-05-15 00:52:06

这将用于形成输出。-表示标准输入,通过echo中的管道提供。

代码语言:javascript
复制
echo -e "to be prepended \n another line" | cat - text.txt

要重写文件,需要一个临时文件,因为它不能通过管道返回到输入文件。

代码语言:javascript
复制
echo "to be prepended" | cat - text.txt > text.txt.tmp
mv text.txt.tmp text.txt
票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10587615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档