前篇回顧
sed - 簡介 讀取編輯文字檔的好工具
sed - 2 Pattern
sed - 3 Delete command
今天聊sed的增加操作
重要
首先拿/etc/passwd
來玩, 但是我們玩備份的這檔案, 別玩etc底下的, 玩完系統就崩潰了
# 複製passwd 到當前目錄
cp /etc/passwd ./
sed '/^root/i ItHome' passwd
> ItHome
> root:x:0:0:root:/root:/bin/bash
> daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
sed '/^root/,/^sys/i ItHome' passwd
> ItHome
> root:x:0:0:root:/root:/bin/bash
> ItHome
> daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
> ItHome
> bin:x:2:2:bin:/bin:/usr/sbin/nologin
> ItHome
> sys:x:3:3:sys:/dev:/usr/sbin/nologin
> sync:x:4:65534:sync:/bin:/bin/sync
sed '/^root/r os.txt' passwd
> root:x:0:0:root:/root:/bin/bash
> Windows OS os
> Linux Os os
> Android
> OS
> daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
-n
就只輸出列印匹配到的內容, 但這裡沒commandp
, 等於不會輸出任何資訊, 畫面乾淨點$?
sed -n '/^root/w passwd_demo' passwd
cat passwd_demo
> root:x:0:0:root:/root:/bin/bash
sed '1i #comment 13th ItHome\n#Arthor:Nathan' passwd
> #comment 13th ItHome
> #Arthor:Nathan
> root:x:0:0:root:/root:/bin/bash
> daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
sed '$a #comment 13th ItHome\n#Arthor:Nathan' passwd
> systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin
> #comment 13th ItHome
> Arthor:Nathan