Linux的shell命令2

  1. cut

    • cut -d ‘分隔符’ -f 指定第幾段
    • cut -c 後面一個數字表示截取第幾個字符,後面一個數字區域,則表示截取幾個字符串
  2. sort

    • sort -t ‘分隔符’-k n1,n2 排序區間 -r 逆序 -n使用純數字 -u 去重
    • 默認使用ascii碼排序,升序
    • 如果按照數字排序,字母當做0
  3. uniq 用於去重複的行

    • uniq -c統計重複的行數,並把行數寫在前面
    • uniq 的前提是需要先給文件排序,否則不管用
  4. tee 將文件重定向的同時,顯示在屏幕上。

    • echo ‘asfddsaf’| tee test.txt
  5. tr 替換字符,針對字符來說

    • tr -d刪除字符,後面跟刪除的字符
    • tr -s把重複的字符去掉
    • cat passwd | tr 'a-z' 'A-Z'
    • cat passwd | tr -s o
    • cat passwd | tr -d a
  6. split 用於切割文檔

    • split -b 10M passwd按照文件大小分割
    • split -l 10 passwd按照文件行數分割
  7. grep 過濾文本

    • grep -c打印符合要求的行數
    • grep -n輸出符合要求的行的同時連同行號一起輸出
    • grep -v打印不符合要求的行
    • grep -An打印符合要求的行以及下面n行
    • grep -Bn打印符合要求的行以及上面n行
    • grep -Cn打印符合要求的行以及上下各n行
    • grep -r遍歷目錄
  8. egrep 相當於 grep -E
    可以直接使用+ , ?, | , (),

  9. sed 查找過濾,替換,刪除

    • 過濾

      • sed -n '10'p 1.txt打印第10行
      • sed -n '1,4'p 1.txt 打印第1到4行
      • sed -n '/^root/'p 1.txt打印符合規則的行
    • 對於正則符號

      • sed -n -r '/ro+/'p 1.txt
      • sed -n '/ro+\+/'p 1.txt
    • 同時執行多個任務

      • sed -e '/root/'p -e '/body/p' -n 1.txt
      • sed '/root/p;/body/p' -n 1.txt
    • 刪除指定行

      • sed '/root/'d 1.txt
    • 替換

      • sed '1,2s/root/ROOT/g' 1.txt
    • 調換字符串的位置

      • sed -r 's/(root)(.*)(bash)/\3\2\1/'
    • 使用-i選項直接修改文件,不建議使用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章