1. 程式人生 > >老男孩教育每日一題-第84天-兩個文件,把第一個文件中的第2、3行內容添加到第二個文件的第3行後面

老男孩教育每日一題-第84天-兩個文件,把第一個文件中的第2、3行內容添加到第二個文件的第3行後面

每日一題

兩個文件如下:

[[email protected] ~]# cat 1.txt 
111
222
333
[[email protected] ~]# cat 2.txt AAA
bbb
ccc
ddd

要求修改後的文件

[[email protected] ~]# cat 2.txt 
AAA
bbb
ccc
222
333
ddd
``

參考答案:

方法1:

[[email protected] ~]# sed -n 2,3p 1.txt |xargs |sed -r ‘s# #\\n#g‘|sed -r ‘s#.*#sed -i "3a&" 2.txt#g‘ |bash
[[email protected]
/* */ ~]# cat 2.txt AAA bbb ccc 222 333 ddd

方法2:

[[email protected] ~]# sed -i "3a$(sed -n ‘2,3p‘ 1.txt |xargs |sed ‘s# #\\n#g‘)" 2.txt 
[[email protected] ~]# cat 2.txt 
AAA
bbb
ccc 
222
333
ddd

方法3:

[[email protected] ~]# awk ‘BEGIN{while("cat 1.txt"|getline){a++;if(a>=2&&a<=3){b=b"\n"$0}};while("cat 2.txt"|getline){c++;if(c==3){print $0,b > "2.txt"}else{print $0 > "2.txt"}}close("2.txt")}‘
[[email protected]
/* */ ~]# cat 2.txt AAA bbb ccc 222 333 ddd

備註

今天是每日一題陪伴大家的第84天期待你的進步

對於題目和答案的任何疑問,請在博客評論區留言
往期題目索引

http://lidao.blog.51cto.com/3388056/1914205

本文出自 “李導的博客” 博客,請務必保留此出處http://lidao.blog.51cto.com/3388056/1944563

老男孩教育每日一題-第84天-兩個文件,把第一個文件中的第2、3行內容添加到第二個文件的第3行後面