Yige

Yige

Build

shell腳本基礎

shell 腳本基礎#

shell 腳本調試#

-n,讀一遍腳本中的命令但不執行,用於檢查腳本中的語法錯誤
-v,一邊執行腳本,一邊將執行過的腳本命令打印到標準錯誤輸出
-x,提供跟蹤執行信息,將執行的每一條命令和結果依次打印出來

shell 腳本對文本中無序的一列數字排序#

[root@server ~]# sort -n 190307.txt | awk '{a+=$0;print$0} END {print "sum="a}'

shell 命令查看文件空行行號#

[root@server ~]# grep -n ^$ filename
[root@server ~]# sed -n '/[a-zA-Z0-9@#$%^&*]!=' filename
[root@server ~]# sed -n '/^$/=' filename
[root@server ~]# awk '/^$/{print NR}' filename

shell 文件夾操作#

  1. 刪除一個文件夾下所有文件但是不刪除文件夾
[root@server-ai ~]# find . -type f | xargs rm -f
  1. 只複製目錄的結構,而不複製目錄的內容
[root@server-ai ~]# find ~ -type d -exec mkdir -p demo/\{\} \;
  1. 查找當前文件夾下所有的文本文件內容中包含有字符”math” 的文件名稱
[root@server-ai ~]# grep -r "math" /home/chenjiawei/test/shell/ | cut -d ":" -f 1
  1. 遍歷目錄及其子目錄中的所有文件

    #! /bin/bash
    function read_dir(){
        for file in `ls $1`       #注意此處這是兩個反引號,表示運行系統命令
        do
            if [ -d $1"/"$file ]  #注意此處之間一定要加上空格,否則會報錯
            then
                read_dir $1"/"$file
            else
                echo $1"/"$file   #在此處處理文件即可
            fi
        done
    }
    #讀取第一個參數
    read_dir $1
    

    執行命令

    $ sh traveDir.sh DIR_NAME
    
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。