Yige

Yige

Build

シェルスクリプトの基礎

シェルスクリプトの基礎#

シェルスクリプトデバッグ#

-n、スクリプト内のコマンドを一度読み取るが実行しない、スクリプト内の構文エラーをチェックするために使用
-v、スクリプトを実行しながら、実行されたスクリプトコマンドを標準エラー出力に印刷
-x、実行情報をトレースし、実行された各コマンドと結果を順次印刷

シェルスクリプトでテキスト中の無秩序な列の数字をソート#

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

シェルコマンドでファイルの空行行番号を表示#

[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

シェルフォルダ操作#

  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
    
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。