1. 程式人生 > 其它 >Python學習之函數語言程式設計

Python學習之函數語言程式設計

命令格式  
    sed [options] 'command' file(s)  
    sed [options] -f scriptfile file(s)  

1. 刪除操作
    命令格式:sed 'start,endd' file_name
    例子:
    sed '2d' file_name 刪除file_name檔案的第二行  
    sed '2,$d' file_name 刪除file_name檔案的第二行到末尾所有行  
    sed '$d' file_name 刪除file_name檔案的最後一行  
    sed '/test/'d file_name 刪除file_name檔案所有包含test的行  

2. 替換操作  
    命令格式:sed 's/old_string/new_string/g/p' file_name  
    例子:   
    sed 's/a/b/g' file 在整行範圍內把a替換為b  
    sed -n 's/^a/b/p' file (-n)選項和p標誌表示只打印替換的行  
    sed 's/^abc/&func/' file 所有以abc開頭的行都會變成abcfunc  
    sed -n 's/\(abc\)func/\1rs/p' file abc被標記為1,所有abcfunc會被替換成abcrs,且打印出來 
    sed -n '/test/,/check/p' example 刪除test或check所在的行,並輸出終端  
    sed -n '5,/^abc/p' file 列印從第五行開始到第一個包含以test開始的行之間的所有行  

3. 讀取檔案  
    命令格式:sed 'pattern/r file_name_1' file_name_2  
    例子:  
    sed '/ab/r file_1' file_2 在包含"ab"後面新增檔案file_1的內容,並顯示在終端

4. 寫入檔案  
    命令格式:sed 'pattern/w file_name_1' file_name_2  
    例子:
    sed '/ab/w file_1' file_2 將file_2包含"ab"行寫入file_1(首先清空檔案,然後再寫入)

5. 追加檔案  
    命令格式:命令格式:sed 'pattern/a file_name_1' file_name_2  
    例子:  
    sed '/fun/a file_1' file_2 將file_2包含"fun"行追加file_1(首先清空檔案,然後再寫入)
    
    注:直接在原始檔修改,如sed -i '1,2d' file_name

6. 多點編輯  
    命令格式: sed -e 'commands_1' -e 'commands_2' file_name  
    例子:  
    sed -e '1,3d' -e 's/abc/def/g' test.txt 刪除1-3行,然後全域性替換abc為def