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