1、判斷/etc/inittab文件是否大於100行,如果大於,則顯示”/etc/inittab is a big file.”否者顯示”/etc/inittab is a small file.” #!/bin/bash a=`awk '{print NR}' /etc/inittab|tail ... ...
1、判斷/etc/inittab文件是否大於100行,如果大於,則顯示”/etc/inittab is a big file.”否者顯示”/etc/inittab is a small file.” #!/bin/bash a=`awk '{print NR}' /etc/inittab|tail -n1` if [$a>100];then echo "文件為大文件" else echo "文件不足100行" fi 2、給定一個用戶,來判斷這個用戶是什麼用戶,如果是管理員用戶,則顯示“該用戶為管理員”,否則顯示“該用戶為普通用戶” #!/bin/bash read -p "輸入用戶:" username echo $username a=`id -u $username` echo "$a" if [ $a -lt 500 ]; then echo "該用戶是管理員用戶" else echo "該用戶為普通用戶" fi 3、判斷某個文件是否存在 #/bin/bash read -p "輸入一個文件:" file ex=`ls $file` if [ $ex == "ls: cannot access e: No such file or directory" ] then echo "無此文件" else echo "有此文件" fi 4、判斷當前系統上是否有用戶的預設shell程式是否為bash程式,如果有,就顯示有多個這類用戶,否則就顯示沒有這類用戶;【並且顯示出那些用戶是bash】 #!/bin/bash grep "\<bash$" /etc/passwd &> /dev/null retal= $? if [ $retal==0 ]; then Users=`grep "\<bash$" /etc/passwd` echo $Users else echo "沒有用戶" fi 5、寫出一個腳本程式,給定一個文件,比如:/etc/inittab a、判斷這個文件中是否有空白行? b、如果有,則顯示其空白行的行號,否則顯示沒有空白行 #!/bin/bash read -p "請輸入文件名稱:" file c=`grep ^$ $file|wc -l` if [ $c -gt 0 ];then echo $c else echo "沒有空白行" fi 6、寫一個腳本程式,給定一個用戶,判斷其UID與GID是否一樣,如果一樣,就顯示該用戶為“good guy”,否則顯示為“bad guy” #!/bin/bash read -p "輸入一個用戶名:" user UID1=`cat /etc/passwd |grep $user| cut -d: -f3` GID1=`cat /etc/passwd |grep $user| cut -d: -f4` echo $UID1 echo $GID1 if [ $UID1-eq$GID1 ]; then echo "good guy" else echo "bad guy" fi 7、寫一個腳本程式,給定一個用戶,獲取其密碼警告期限;然後判斷用戶最近一次修改密碼的時間距離今天是否已經小於警告期限; 8、判斷命令歷史中歷史命令的總條目是否大於1000,如果大於,則顯示“some command will gone”,否則顯示OK #!/bin/bash num=`wc -l /root/.bash_history` echo $num if [ $num -gt 1000 ]; then echo "some commed will gone" else echo "OK" fi 9、給定一個文件,如果是普通文件,就顯示出來,如果是目錄文件,也顯示出來,否則就顯示“無法識別” #!/bin/bash read -p "輸入一個文件>>" file1 if [ -f `ls $file1` ];then echo “普通文件” elif [ -d `ls $file1` ];then echo ”目錄文件“ else echo "無法識別" fi 10、寫一個腳本,能接受一個參數(文件路徑),判斷這個參數如果是一個存在的文件就顯示“ok”,否則顯示“No such file” #!/bin/bash read -p "給定一個文件路徑>>" file1 if [ -n `ls $file1` ];then echo "此文件存在在" else echo "文件不存在" fi 11、寫一個腳本,給腳本傳遞兩個參數,顯示兩則之和和兩者之積 #!/bin/bash read -p "輸入參數A>>" A read -p "輸入參數B>>" B let C=$A+$B let D=$A*$B echo "A+B=$C" echo "A*B=$D"