1樓:
's/^\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4/'
就是如下的效果
將aabbccddeeffgghh
替換為aa:bb:cc:dd
其中^表示從一行的開頭匹配
第乙個\(..\)表示匹配任意2個字元,並且後面的\1,就是這次匹配的結果。
對於字串aabbccddeeffgghh而言,就是aa這2個字元同理,第二\(..\)匹配bb,對應\2
第三\(..\)匹配cc,對應\3
第四\(..\)匹配dd,對應\4
剩下的eeffgghh匹配 .*$,其中.*表示匹配任意個字元,$匹配到末尾,這些字串被拋棄
aabbccddeeffgghh得到的結果就是aa:bb:cc:dd
linux命令 sed 請問有哪位大大知道這個sed 命令是什麼意思嗎? sed 's/\//\\\//g'
2樓:我的她最美
擷取或修改字串,列印到螢幕上。
使用方法:sed 引數 '動作' 動作物件如果用-i引數將修改文件的內容,你的sed 's/\//\\\//g'這個我舉乙個類似的再分析你的。
sed 's/old/new/g』 ***這個就是把***文件裡面的old這個詞換成new這個詞。
你的sed 's/\//\\\//g'裡面既是把,/換成\\/。s/\//是一部分/\\\//g又是一部分,s後面的//之間就是要替換的詞語和上面的old類似,由於/有特殊定義,所以用\轉意成普通符號/,/\\\//g從第一符號到g前面的/之間就為替換old的new,為\\/前面兩個\就是\沒有特殊意義所以為\\,後面g前面的第二個/由於有特殊意義所以用\來轉意,所以new為\\/。在s/old/new/g裡面的/為固定格式所需要的,所以想列印出/來的話,要用\來轉意,linux特殊字元轉意都用\。
詳細的引數資訊用man page,這個是比不可少的,因為乙個人不可能把那些東西全部記得,如果你硬要記還不如記唐詩三百首呢。只要知道這個命令或是這個工具的工作原理,使用方法自然就明了,要用到的時候查一下即可,沒有必要和自己過不去。
3樓:匿名使用者
語 法:sed [-hnv][-e][-f文字
檔案]補充說明:sed可依照script的指令,來處理、編輯文字檔案。
參 數:
-e或--expression=以選項中指定的script來處理輸入的文字檔案。
-f