shell指令碼例項

2021-12-29 21:04:15 字數 2343 閱讀 1525

shell指令碼例項

1、切換工作目錄至位置引數給出的目錄,依次向這些目錄中的每個檔案或子目錄問好,統計這些目錄下的各種檔案及子目錄個數,並顯示。 01

#! /bin/sh02 

03#切換工作目錄至位置引數給出的目錄

04#依次向這些目錄中的每個檔案或子目錄問好

05#統計這些目錄下的各種檔案及子目錄個數,並顯示06 

07if [ $# -lt 1 ]

08then

09    echo "parameter's number error!";

10    exit 1;

11fi;12 

13while [ $# -gt 0 ]

14do

15    if [ -f $1 ]

16    then

17        echo "$1 is not a dir!";

18    else  

19        cd $120 

21        bfiles=0;  #塊裝置檔案

22        cfiles=0;  #字元裝置檔案

23        pfiles=0;  #管道檔案

24        lfiles=0;  #鏈結檔案/目錄

25        sfiles=0;  #sock檔案

26        files=0;   #普通檔案

27        dirs=0;    #目錄檔案

28        total=0;   #總檔案數

29        for var in `ls $1`

30        do

31            total=`expr $total + 1`;

32            echo "hello $var";

33            if [ -b $var ]

34            then

35                bfiles=`expr $bfiles + 1`; 

36            elif [ -c $var ]

37            then

38                cfiles=`expr $cfiles + 1`;

39            elif [ -s $var ]

40            then

41                sfiles=`expr $sfiles + 1`;

42            elif [ -p $var ]

43            then

44                pfiles=`expr $pfiles + 1`;

45            elif [ -h $var ]

46            then

47                lfiles=`expr $lfiles + 1`;

48            elif [ -f $var ]

49            then

50                files=`expr $files + 1`;

51            elif [ -d $var ]

52            then

53                dirs=`expr $dirs + 1`;

54            fi;

55        done

56      

57        echo "the number of bfiles is $bfiles";

58        echo "the number of cfiles is $cfiles";

59        echo "the number of lfiles is $lfiles";

60        echo "the number of sfiles is $sfiles";

61        echo "the number of pfiles is $pfiles";

62        echo "the number of files is $files";

63        echo "the number of dirs is $dirs";

64        echo "total file number  is $total";

65    fi;

66    echo "************************************"

67    shift;

68done

shell指令碼例項

1.批量建立10個系統賬號test01 test10,並隨機設定8位數密碼 bin bash for i in seq w 10 do useradd test i echo random madsum cut c 8 tee a passwd.txt stdin test i done 2.在目錄...

Shell 指令碼例項

指令碼內容如下 bin bash action 定義函式,進行操作指南 action 1 database mysql uroot p 1 en e show databases grep e schema v mkdir p mnt sqldump e database name sql case...

Shell指令碼例項

1.寫乙個指令碼,利用迴圈計算10的階乘 bin sh factorial 1 for a in seq 1 10 dofactorial expr factorial a done echo 10 factorial 注 上面有一行,for a in seq 1 10 其中seq 1 10 即列出...