1. 程式人生 > >sed 在指定行後新增新資料

sed 在指定行後新增新資料

1. sed 的 追加 a 選項

cat txt
aaa 111 bbb
ccc 222 ddd
eee 333 ggg
jjj 444 kkk
hhh 555 lll
mmm 666 nnn
jjj 444 kkk
kk 777 ggg

(1). a 追加一行資料

sed -i -e '/jjj 444 kkk/a\test test test' txt
cat txt
aaa 111 bbb
ccc 222 ddd
eee 333 ggg
jjj 444 kkk
test test test  #追加
hhh 555 lll
mmm 666 nnn
jjj 444 kkk
test test test  #追加
kk 777 ggg

(2). a 追加多行資料

sed -i -e '/jjj 444 kkk/a\one one one\ntwo two two\nthree three three' txt
cat txt
aaa 111 bbb
ccc 222 ddd
eee 333 ggg
jjj 444 kkk
one one one
two two two
three three three
hhh 555 lll
mmm 666 nnn
jjj 444 kkk
one one one
two two two
three three three
kk 777 ggg

注意:
  • 不用加 g選項 就預設把符合條件的都加入  a\ 後面的內容
  • 加入一行預設是自動換行;最後一行不用加 \n
  • 有時我們遇到了在指定多行之後新增多行,其實這樣的需求用sed 很難實現,可以嘗試把檔案組裝成 json 或者xml的格式,然後用pyton來處理這個json,
然後轉換成我們需要的格式檔案

相關推薦

sed指定新增資料

1. sed 的 追加 a 選項 cat txt aaa 111 bbb ccc 222 ddd eee 333 ggg jjj 444 kkk hhh 555 lll mmm 666 nnn jjj 444 kkk kk 777 ggg (1). a 追加一行資料

JDBC插入資料返回資料id

使用jdbc向表中插入資料時,有時候需要返回新插入資料的id。比如現在要向兩個表中分別插入一條資料,第一條資料插入後生成的id要作為第二條資料的一個欄位值。 具體程式碼: PreparedStatement pstmt = null; ResultSet rs =

pandas 篩選指定或者列的資料

pandas主要的兩個資料結構是:series(相當於一行或一列資料結構和DataFrame(相當於多行多列的一個表格資料機構)。    原文:https://www.cnblogs.com/gangandimami/p/8983323.html 1.重新索引:reindex和ix

5 VBA實現自動在所用資料列後邊新增資料

操作環境;VB編輯器,在N1所在列後邊新增資料  ### 特別注意r是物件  sub demo()  dim r as range     If Cells(i, 58) = 0 Then      &nb

GridView在不寫端程式碼繫結資料來源且無資料的情況下顯示腳註Footer的方法

        記錄一下今天解決的一個需求,GridView在頁面上用SqlDataSource控制元件配置資料來源直接繫結,不用後臺程式碼動態繫結,然後為了方便插入資料,在參考了各位大佬的博文後,採用了在欄位的腳註行裡插入文字框控制元件,收集各列的資料,然後在後臺用S

python處理某些資料夾下的csv檔案,提取指定檔案中

需求: 提取2017-06--2017-08三個月的資料中的某些行到一個新的檔案中。 思路: 1.迴圈讀取每個資料夾下的每一個檔案 2.解析檔案,把滿足條件的資料寫到list中 3.把list寫入新檔案。 程式碼如下:【環境是Windows7專業版+Python2.7.9】

sed指定上刪除和新增字元

引言 我在一個專案中需要釋出版本,兩個客戶的需求基本相同,只有是在一個fm34(消迴音)模組上一個有該功能,另外一個沒有。那麼就存在在發版本的時候根據需要開啟和關閉關於fm34相關的程式碼。 其中的一個就是是否需要inmod一個ko檔案,我的處理是: 在指令碼中有inmo

sed用法——在指定後面添加內容

ccie style cisc inux security txt 用法 color 添加內容 文檔內容如下: # cat 123.txt linuxciscohuaweinetworksystem 1. 使用sed命令在cisco行下面添加CCIE; # sed -i "

sed應用 升級場景配置文件更新 指定追加

pan port rep func res list class strong lin function addLine() { confFile=configuration.xml isExist=`cat ${confFile} | grep "<liste

sed指定插入、追加、全局替換

sed指定某行插入、追加、全局替換sed指定某行插入、追加、全局替換分類:Linux (1088) (0)有時候會有這樣的需求,在指定的行後面或者是前面追加一行,這個時候可以使用sed來完成,具體用法如下a\ 在指定的行後面追加一行 b\ 在指定的行前面追加一行使用指定的行號追加內容,在使用行號的過程中,需

03 React快速入門(三)——實現從一個輸入框中新增資料此輸入框內容清除的功能

功能描述:       我們在一個輸入框輸入內容,然後點選新增按鈕,此輸入框的內容就會新增到頁面上,但是此輸入框中還存在上次輸入的內容,我們想在每次輸入新增完成之後,此輸入框中的內容就會清除,如圖:      

愛數選擇SAP S/4HANA Cloud 打造數字化核心,為資料探索之路新增動力

SAP 與上海愛數資訊科技股份有限公司(以下簡稱「愛數」)日前舉行了簽約儀式。愛數選擇採用 SAP S/4HANA Cloud(ERP雲)為其打造企業數字化核心管理系統,實現高效協同、精細化運營、智慧化管理的數字化升級,為資料探索之路新增新動力,成就智慧企業。 ▲SAP 中國區副總裁、服務行業群總經理裴沵

Java實現讀取Excel指定列的指定資料

package utils; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import j

小程式裡面對後臺返回的資料新增的欄位

1,在寫小程式的時候,發現xml裡面顯示的資料在一個item的list的數組裡面。比如 我的xml裡面要顯示item =3的fyhqmz的2個值的和(10+15) 比如這樣 所以我就想自己去新增一個欄位, 從現在的後臺返回的資料結構 轉換成這樣的

使用layui 做後臺管理介面,在Tab中的連結點選新增一個TAB的解決方法

給連結或按鈕  新增 onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')"   如: <a href="javascript:void(0)" title="google" onclick="s

git cmd 命令在已有的倉庫重新新增資料

正確步驟: 1. git init //初始化倉庫 git add .(檔案name) //新增檔案到本地倉庫 git commit -m “first commit” //新增檔案描述資訊 git remote add origin + 遠端倉庫地址 //連結遠

查詢與匯出mysql資料指定數(limit)

查詢 顯示5到10行的記錄,即查詢6行記錄 select * from tablename limit 4,6; 顯示第6行的記錄 select * from tablename limit 5,1; 查詢前n行記錄 select * from tablename limit

HBase的java操作,最新API。(查詢指定、列、插入資料等)

– 關於HBase環境搭建和HBase的原理架構,請見筆者相關部落格。 1.HBase對java有著較優秀的支援,本文將介紹如何使用java操作Hbase。 首先是pom依賴: <dependency> <groupId>org