-
sed 命令之 -r讀 -w寫 1. sed '1r 123.txt' abc.txt : 代表把123.txt整個(gè)文件的內(nèi)容附加在abc.txt的第一行內(nèi)容之后 2. sed '1w 123.txt' abc.txt : 代表把a(bǔ)bc.txt的第一行拷貝到123.txt文件 注意此時(shí)會(huì)覆蓋文件123.txt原本的內(nèi)容查看全部
-
1. 后面的\1,\2``` 按順序代表前面的\( \)中的內(nèi)容 2 . sed 's/\(^[a-z0-9_-]\+\):x:\([0-9]\+\):\([0-9]\+\):.*$/\1 \2 \3/' passwd.log 1)最后的.*$代表后面的所有隨機(jī)字符 2)那么的話,出來\1, \2 ,\3所代表的那些字符串外,其余的字符串全部不現(xiàn)實(shí) 3)注意上面[a-z0-9_-]不要寫成-_,否則系統(tǒng)會(huì)認(rèn)為9-_是一個(gè)錯(cuò)誤范圍查看全部
-
1. & 代替固定字符串 sed 's/^[a-z_-]\+/& /' /etc/passwd 將用戶名后面添加空格 2. \u \l \U \L轉(zhuǎn)換大小寫,前邊小寫u和l僅變更開頭字符,大寫U和L變更全部 sed 's/^[a-z-_]\+/\u&/' /etc/passwd 將用戶名第一個(gè)字母轉(zhuǎn)大寫查看全部
-
sed總結(jié)查看全部
-
sed 行處理查看全部
-
sed流處理編輯器查看全部
-
正則表達(dá)式總結(jié)查看全部
-
ed多命令操作 實(shí)現(xiàn)跳行輸出有兩種方法: 1. sed -n '起始行~行距(每次跳幾行)' 文件名 2. sed 中的n命令表示調(diào)到下一行, sed -n '{n;p}' 就可以表示先跳到下一行,然后再開始打印,結(jié)果就是輸出所有的偶數(shù)行查看全部
-
sed替換命令。 1.如果只是sed 's/舊字符/新字符',那么就只會(huì)替換每行第一個(gè)遇到的舊字符 2. 因此要在最后加上g,表示全局,才會(huì)全部替換查看全部
-
一、sed文本處理過程 1. 正則表達(dá)式選定文本調(diào)用sed操作命令進(jìn)行處理 二、sed的格式 1. 命令行格式 1.1 sed [options] 'command' file(s) 1.1.1 options:-e ; -n 1.1.2 command:行定位(正則)+sed命令(操作) 1.1.3 例如:sed -n '/root/p' 1.1.4 例如:sed -e '10,20d' -e 's/false/true/g' 2. 腳本格式 2.1 sed -f scriptfile file(s)查看全部
-
一、基本操作命令 1. p命令:打印相關(guān)的行 1.1 sed 'p' passwd #會(huì)打印出兩行,因?yàn)閟ed的原理是讀入一行,輸出一行,此處再加上p命令打印出來的一行,所以最后會(huì)打印出兩行 1.2 sed -n 'p'passwd #加了-n選項(xiàng)之后,只會(huì)打印出相關(guān)的行,那些不相關(guān)的行則不會(huì)打印出來 二、行定位 1. 定位一行:x;(x為數(shù)字,行號的意思),/pattern/(pattern為正則表達(dá)式,正則兩邊加上//) 1.1 例如:sed -n '10p' passwd #通過行號定位,定位到第10行,并打印到屏幕但是無法看到行號 1.2 例如:nl passwd | sed -n '10p' #使用nl命令顯示文件的行號,再通過管道傳遞給sed進(jìn)行行處理。 1.3 例如:sed -n '/mooc/p' passwd #通過正則定位,定位含有mooc字符串這一行,并打印到屏幕 2. 定位幾行: 2.1 x,y #(定位一個(gè)區(qū)間,x行到y(tǒng)行) 2.1.1 例如:nl passwd | sed -n '10,20p' 2.2 x,/pattern/ #(定位一個(gè)區(qū)間,x為開始的行號,pattren為結(jié)束的正則所表示的行) 2.2.1 例如:nl passwd | sed -n '10,/mooc/p' 2.3 /pattern1/,/pattern2/ #(定位一個(gè)區(qū)間,pattern1為開始的正則1所表示的行,pattern2為結(jié)束的正則2所表示的行) 2.3.1 例如:nl passwd | sed -n '/news/,/mooc/p' 2.4 "!" #感嘆號,對所選的行進(jìn)行取反 2.4.1 例如:nl passwd | sed -n '10!p' 2.4.2 例如:nl passwd | sed -n '10,20!p' 3.定位間隔幾行: 3.1 first~step (first為開始的行,setp為步長也就是間隔幾行) 3.1.1 例如:nl passwd | sed -n '1~2p' #定位從第1行開始,中間間隔2行的所有的行查看全部
-
一、a 命令 #新增加一行,在所選行的下面新增一行,并輸入內(nèi)容 1. 命令格式:sed '行號+a命令+需要增加的內(nèi)容' 2. 例如:nl passwd | sed '5a======' #在第5行的下面新增一行,并寫入======這些內(nèi)容 3. 例如:nl passwd | sed '1,5a======' #在第1-5行每一行下面都增加一行并寫入同樣的內(nèi)容 二、i 命令 #新插入一行,在所選行的上面插入一行,并輸入內(nèi)容 1. 命令格式:sed '行號+i命令+需要插入的內(nèi)容' 2. 例如:nl passwd | sed '5i======' #在第5行的上面插入一行,并寫入======這些內(nèi)容 3. 例如:nl passwd | sed '1,5i======' #在第1-5行每一行上面都插入一行并寫入同樣的內(nèi)容 三、c 命令 #替換一行,將所選定的行的內(nèi)容替換成需要替換的內(nèi)容 1. 命令格式:sed '行號+c命令+需要替換的內(nèi)容' 2. 例如:nl passwd | sed '5c======' #將第5行的內(nèi)容替換成======這些內(nèi)容 3. 例如:nl passwd | sed '1,5c======' #將1-5行整體的內(nèi)容都替換成======這些內(nèi)容 四、d 命令 #刪除一行,將所選行的內(nèi)容全部刪除 1. 命令格式:sed '行號+d命令+需要替換的內(nèi)容' 2. 例如:nl passwd | sed '5d======' #將第5行的內(nèi)容全部刪除 五、案例一:優(yōu)化服務(wù)器配置 1. 目標(biāo):在SSH的配置文件中加入相應(yīng)的文本: Port 52113 PermitRootLogin no PerminEmptyPasswords no 2. 操作命令:sed '$a \ port 52113 \n permitrootlogin no' ssh_config #在文本尾部的下面增加兩行,并寫入相關(guān)內(nèi)容($美刀符號定位文本的尾部) 六、案例二:文本處理 1. 目標(biāo):刪除文本中的空行 2. 操作命令:sed '/^$/d' all.txt #刪除文本中的空行查看全部
-
正則表達(dá)式查看全部
-
正則表達(dá)式 字符組合使用方法 1.重復(fù)的表示 * + ? {,} 2.邏輯的表示 |查看全部
-
正則表達(dá)示的 元字符使用方法查看全部
舉報(bào)
0/150
提交
取消