1.怎麼判斷文件是否是文件夾
[root@Carlton /]# [ -d /etc/hosts ]
[root@Carlton /]# echo $?
1
[root@Carlton /]# [ -d /etc ]
[root@Carlton /]# echo $?
0
[root@Carlton /]# ls -ld /etc/hosts /etc/
drwxr-xr-x. 99 root root 4096 Aug 19 22:22 /etc/
-rw-r--r-- 1 root root 196 Jun 12 23:40 /etc/hosts
2. 判斷目錄是否有父目錄,並輸出YES
[root@Carlton /]# [ -e /server/scripts/111 ] && echo "YES"
[root@Carlton /]# [ -e /server/scripts ] && echo "YES"
YES
3. 切換到普通用戶teacher , 使普通用戶判斷對/etc/passwd 目錄是否是有可讀可寫權限
[root@Carlton /]# useradd teacher
[root@Carlton /]# echo "123456" |passwd --stdin teacher
Changing password for user teacher.
passwd: all authentication tokens updated successfully.
[root@Carlton /]# su - teacher
[teacher@Carlton ~]$ pwd
/home/teacher
[teacher@Carlton ~]$ [ -w /etc/passwd ]
[teacher@Carlton ~]$ echo $?
1
[teacher@Carlton ~]$ [ -r /etc/passwd ]
[teacher@Carlton ~]$ echo $?
0
[teacher@Carlton ~]$ [ -r /etc/passwd ]&& echo "YES"
YES
[teacher@Carlton ~]$ [ -w /etc/passwd ]&& echo "YES"
4.測試當前系統中有幾個登錄用戶,若是大於10,則輸出」yes「
[teacher@Carlton ~]$ [ `who |wc -l` -le 10 ] &&echo "YES"
YES
[teacher@Carlton ~]$ [ `who |wc -l` -le 2 ] &&echo "YES"
[teacher@Carlton ~]$ who |wc -l
3
5.提示用戶輸入一個文件路徑,並判斷是不是「/etc/inittab」,若是是則顯示「YES」。
[root@Carlton /]# read -p "Location: " filepath
Location: /etc/password
[root@Carlton /]# [ $filepath = "/etc/password" ]&& echo "YES"
YES
[root@Carlton /]# [ $filepath = "/etc/password" ]
[root@Carlton /]# echo $?
0
6.若當前環境變量LANG的內容不是「en.US」,則輸出LANG變量的值,不然無輸出。
[root@Carlton ~]# [ $LANG != "en.US" ] && echo $LANG
en_US.UTF8
7.使用touch命令創建一個新文件,測試其內容是否爲空,向文件中寫入內容後,再次進行測試。
[root@Carlton ~]# [ -Z `cat zero.file` ] && echo "YES"
YES
若是想試試非空文檔,則追加文件去zero.file 就能夠
8. 肯定當前用戶是否是teacher用戶
[root@Carlton ~]# [ $USER = "teacher" ] || echo "Not teacher"
Not teacher