#!/bin/bash
#
RATE=`df -h | grep "/dev/sda5" | awk '{print $5}' | cut -d "%" -f 1`
if [ "$RATE" -le "10" ]; then
echo "/ is null, only $RATE"
fi
#
RATE=`df -h | grep "/dev/sda5" | awk '{print $5}' | cut -d "%" -f 1`
if [ "$RATE" -le "10" ]; then
echo "/ is null, only $RATE"
fi
2016-10-29
-r -w -x 是会根据命令执行者的权限进行判断的
[root@t ~]# touch /t
[root@t ~]# ls -al /t
-rw-r--r--. 1 root root 0 Sep 26 09:10 /t
[root@t ~]# test -w /t
[root@t ~]# echo $?
0
[root@t ~]# su test
[t@t root]$ ls -al /t
-rw-r--r--. 1 root root 0 Sep 26 09:10 /t
[t@t root]$ test -w /t
[t@t root]$ echo $?
1
[root@t ~]# touch /t
[root@t ~]# ls -al /t
-rw-r--r--. 1 root root 0 Sep 26 09:10 /t
[root@t ~]# test -w /t
[root@t ~]# echo $?
0
[root@t ~]# su test
[t@t root]$ ls -al /t
-rw-r--r--. 1 root root 0 Sep 26 09:10 /t
[t@t root]$ test -w /t
[t@t root]$ echo $?
1
2016-10-27
执行下面的命令,返回是0值(即真),可是BB明明是没有内容的。
[root]# BB=“”
[root]# [ -n $BB ]
[root]# echo $?
0
原来需要用双引号把变量名括起来,即变成[ -n "$BB" ]。这样才行。
[root]# [ -n "$BB" ]
[root]# echo $?
1
因为如果没有双引号括起变量,当BB为null时,判定表达式变成:[ -n ]。这显然是范围true。当然,如果不想用双引号,那么使用[[ ]]判定语句也是可以的。
[root]# BB=“”
[root]# [ -n $BB ]
[root]# echo $?
0
原来需要用双引号把变量名括起来,即变成[ -n "$BB" ]。这样才行。
[root]# [ -n "$BB" ]
[root]# echo $?
1
因为如果没有双引号括起变量,当BB为null时,判定表达式变成:[ -n ]。这显然是范围true。当然,如果不想用双引号,那么使用[[ ]]判定语句也是可以的。
2016-10-24
我 觉得 grep httpd 不会写长点啊 把绝对路径全部加上去
grep /usr/sbin/httpd 不就好了
grep /usr/sbin/httpd 不就好了
2016-10-23