當在shell指令碼中,需要先用grep獲取行號,再利用行號插入資料時,可以這樣使用
insert_str="12312
"num=`grep -rn $str $|awk -f ':'
''`sed -i $num"
i"$insert_str $
請注意,變數和開頭引號之間不能有空格
或者這樣
sed -i "$num i$insert_str
" $file
其中,i表示在行前插入,a表示在行後插入
如果插入字串有空格,可以使用\轉義
insert_str="\ \ \ 123
"
sed 中 單引號,雙引號 是有區別的.
感覺單引號並不能 解析 shell中的變數,需要用雙引號才能解析。從上面的例子可以看出來。
export new=goodecho
"hello old frank
" |sed "
s/old/$/g
"
結果如下:
hello good frank
Shell 指令碼 Sed命令的使用
sed是乙個很好的檔案處理工具,本身是乙個管道命令,主要是以行為單位進行處理,可以將資料行進行替換 刪除 新增 選取等特定工作,下面先了解一下sed的用法 sed命令列格式為 sed nefri command 輸入文字 常用選項 n 使用安靜 silent 模式。在一般 sed 的用法中,所有來自...
Shell指令碼sed命令
1 p命令 命令p用於顯示模式空間的內容。預設情況下,sed把輸入行列印在螢幕上,選項 n用於取消預設的列印操作。當選項 n和命令p同時出現時,sed可列印選定的內容。例子 plain view plain copy 1 sed my p datafile 預設情況下,sed把所有輸入行都列印在標準...
shell指令碼中sed的使用
sed語法格式 語法格式 sed 選項 編輯指令 檔名 選項 n 遮蔽預設輸出 i 直接修改檔案內容 r 啟用擴充套件正則 條件 1.行號 指令 p 輸出 print 例子 列印第一到四行 sed n 1,4p passwd 列印第三行,第五行 sed n 3p 5p passwd 列印第三行之後的...