1. sed的help
usage: sed [option]... [input-file]...2. 感覺用的最多的就是 sed -i 靜默本地替換檔案內容.-n, --quiet, --silent
suppress automatic printing of pattern space
-e script, --expression=script
add the script to the commands to be executed
-f script-file, --file=script-file
add the contents of script-file to the commands to be executed
--follow-symlinks
follow symlinks when processing
inplace
-i[suffix], --in-place[=suffix]
edit files
in place (makes backup if
suffix supplied)
-c, --copy
use copy instead of rename when shuffling files
in -i mode
-b, --binary
does nothing;
for compatibility with win32/cygwin/msdos/emx (
open files
in binary mode (cr+lfs are not treated specially))
-l n, --line-length=n
specify the desired line-wrap length for the `l'
command
--posix
disable all gnu extensions.
-r, --regexp-extended
use extended regular expressions
inthe script.
-s, --separate
consider files
as separate rather than as
a single continuous
long
stream.
-u, --unbuffered
load minimal amounts of data
from
the input files and flush
the output buffers more often
-z, --null-data
separate lines by nul characters
--help
display
this
help and exit
--version
output version information and exit
簡單的練習
vim zhaobsh.txt
zhaobsh is儲存之後進行替換cainiao
zhaobsh
is cainiaocainiao
1. 每行增加乙個 yes
2. 沒個末尾增加乙個 enough
sed -i '效果s/$/ enough/
' zhaobsh.txt
3. 將 cainiao 替換才caibi
4. 替換所有的菜鳥的命令
sed -i '5. 刪除 包含某字元的一整行s/cainiao/caibi/g
' zhaobsh.txt
sed -i '備註 這裡會刪掉 enough 所在的整行資訊./enough/d
' zhaobsh.txt
簡單的學習一下 後續工作中 會越來越多的用到.
其他的命令暫時還沒學. 用到了 再繼續整理.
備註 一些正規表示式的定義相關
^ 表示一行的開頭。如:/^#/以#開頭的匹配。awk的簡單使用 顯示 檔案的一部分內容$ 表示一行的結尾。如:/}$/以}結尾的匹配。
\< 表示詞首。 如 \
\> 表示詞尾。 如 abc\>表示以 abc 結尾的詞。
. 表示任何單個字元。
*表示某個字元出現了0次或多次。
[ ] 字元集合。 如:[abc]表示匹配a或b或c,還有[a-za-z]表示匹配所有的26個字元。如果其中有^表示反,如[^a]表示非a的字元
之前刪除所有 error的機器 的方法就是使用 awk 來的
1. 建立測試檔案
netstat -ano >awk.txt
顯示所有 第八專案為"/run/systemd/journal/stdout" 的內容
awk '$8=="/run/systemd/journal/stdout"
' awk.txt
sed直接替換檔案內容
sed i s zhangsan lisi g grep zhangsan rl modules 解釋一下 i 表示inplace edit,就地修改檔案 r 表示搜尋子目錄 l 表示輸出匹配的檔名 這個命令組合很強大,要注意備份檔案。1 sed y 1234567890 abcdefghij te...
sed直接替換檔案內容
sed i s zhangsan lisi g grep zhangsan rl modules 解釋一下 i 表示inplace edit,就地修改檔案 r 表示搜尋子目錄 l 表示輸出匹配的檔名 這個命令組合很強大,要注意備份檔案。1 sed y 1234567890 abcdefghij te...
sed直接替換檔案內容
sed i s zhangsan lisi g grep zhangsan rl modules 解釋一下 i 表示inplace edit,就地修改檔案 r 表示搜尋子目錄 l 表示輸出匹配的檔名 這個命令組合很強大,要注意備份檔案。1 sed y 1234567890 abcdefghij te...