linux 往文件中插入多行
最近想要实现一个往文件中插入多行的功能,原以为很简单的一件事情,但实际操作中却发现了某些方法中的一些限制,现大略总结如下:
将一个文件file1 的内容添加到另一文件file2 中
1)使用cat 加重定向的方式添加到开始处
cat file1 file2 > temp cat temp > file2
2)使用sed r添加到指定位置,但不能是开始处
#将文件new2.txt中的数据添加到new.txt的第一行后 sed '1r new2.txt' new.txt
3)使用sed i 添加多行数据到指定位置,但直接添加从文件读取的内容时,则会报错
ii 添加多行数据
#在文件开始处添加两行数据 sed -i '1i a\nb' file2 content='a\nb' sed -i '1i '$content'' file2
ii 读取文件file1的内容到变量,再添加到文件file2 中,会报错
ubuser@ubuntu:/var/www/qpy_html$ cat file1 a bb c ubuser@ubuntu:/var/www/qpy_html$ content=`cat file1` ubuser@ubuntu:/var/www/qpy_html$ sed -i '1i '$content'' file2 sed: can't read bb: No such file or directory sed: can't read c: No such file or directory
分类:
linux
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗