<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## sed sed:Stream Editor文本流編輯,sed是一個“非交互式的”面向字符流的編輯器。能同時處理多個文件多行的內容,可以不對原文件改動,把整個文件輸入到屏幕,可以把只匹配到模式的內容輸入到屏幕上。還可以對原文件改動,但是不會再屏幕上返回結果。 **sed命令的語法格式:** sed的命令格式: `sed [option] 'sed command'filename` sed的腳本格式:`sed [option] -f 'sed script'filename` **sed命令的選項(option):** -n :只打印模式匹配的行 -e :直接在命令行模式上進行sed動作編輯,此為默認選項 -f :將sed的動作寫在一個文件內,用–f filename 執行filename內的sed動作 -r :支持擴展表達式 -i :直接修改文件內容 **sed在文件中查詢文本的方式:** **1)使用行號,可以是一個簡單數字,或是一個行號范圍** | x | x為行號 | | ----------------- | ---------------------------- | | x,y | 表示行號從x到y | | /pattern | 查詢包含模式的行 | | /pattern /pattern | 查詢包含兩個模式的行 | | pattern/,x | 在給定行號上查詢包含模式的行 | | x,/pattern/ | 通過行號和模式查詢匹配的行 | | x,y! | 查詢不包含指定行號x和y的行 | **sed的編輯命令(sed command):** | p | 打印匹配行(和-n選項一起合用) | | ---------- | ------------------------------------------------------------ | | = | 顯示文件行號 | | a\ | 在定位行號后附加新文本信息 | | i\ | 在定位行號后插入新文本信息 | | d | 刪除定位行 | | c\ | 用新文本替換定位文本 | | w filename | 寫文本到一個文件,類似輸出重定向 > | | r filename | 從另一個文件中讀文本,類似輸入重定向 < | | s | 使用替換模式替換相應模式 | | q | 第一個模式匹配完成后退出或立即退出 | | l | 顯示與八進制ACSII代碼等價的控制符 | | {} | 在定位行執行的命令組,用分號隔開 | | n | 從另一個文件中讀文本下一行,并從下一條命令而不是第一條命令開始對其的處理 | | N | 在數據流中添加下一行以創建用于處理的多行組 | | g | 將模式2粘貼到/pattern n/ | | y | 傳送字符,替換單個字符 | | 操作符 | 名字 | 效果 | | --------------------------------- | --------- | ------------------------------------------------------------ | | `[地址范圍]/p` | 打印 | 打印[指定的地址范圍] `3,5/p` | | `[地址范圍]/d` | 刪除 | 刪除[指定的地址范圍] | | `s/pattern1/pattern2/` | 替換 | 將指定行中, 將第一個匹配到的pattern1, 替換為pattern2. | | `[地址范圍]/s/pattern1/pattern2/` | 替換 | 在`*地址范圍*`指定的每一行中, 將第一個匹配到的pattern1, 替換為pattern2. | | `[地址范圍]/y/pattern1/pattern2/` | transform | 在`*地址范圍*`指定的每一行中, 將pattern1中的每個匹配到pattern2的字符都使用pattern2的相應字符作替換. (等價于tr命令) | | `g` | 全局 | 在每個匹配的輸入行中, 將*每個*模式匹配都作相應的操作. (譯者注: 不只局限于第一個匹配) | - 過濾PHP.ini中空行和注釋 ```shell sed -n '/^;/!p{/^$/!p}' php.ini ``` - 打印指定行數的內容 ```shell sed -n '3,6'p php.ini ``` - 打印匹配行 ```shell sed -n '/php/p' php.ini ``` ### 替換 s ```shell sed -n 's/php/PHP/g' php.ini #把php 替換成PHP ``` ### 追加 a\ 對源文件追加 加-i ```shell sed '/^test/a\this is a test line' file #將 this is a test line 追加到 以test 開頭的行后面: sed '/^test/i\this is begin/' #將this is end 追加到匹配的行頭 ``` - 行尾追加字符 ```shell sed '/php/s/$/ PHP/' php.ini ``` - 行首追加 ```shell sed 's/^/START/' ``` ### 刪除 d ```shell sed '/^$/d' file #刪除空白 sed '1,10d' file # 刪除1-10行 sed '/^$/' file #刪除空白行 sed '/^PHP/d' file #刪除PHP開頭的行 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看