第一種:
#!/bin/bash service vsftpd start &> /dev/null if
[ $? -eq 0 ]
then
echo "ftp is start"
else
service vsftpd start
fi
第二種:
#!/bin/bash read -p "input your file name " file_name
if [ -d $file_name ] //判斷是否為目錄
then
echo " this file is directory!"
elif [ -f $file_name ] //是否為檔案
then
echo "this file is file"
elif [ -c $file_name -o -b $file_name ] //是否為字元裝置或塊裝置,符合其一就ok
then
echo "this is block file" else echo "this file unknown"
fi
[root@redhat shellscripts]# ll /dev/sda brw-rw----. 1 root disk 8, 0 Jun 1 10:05 /dev/sda
[root@redhat shellscripts]# ll /dev/tty crw-rw-rw-. 1 root tty 5, 0 Jun 1 10:05 /dev/tty
第三種:
#!/bin/bash
if [ $# -ne 2 ]
then
echo "Not enough parameters"
exit 0 //如果不是2個數,則跳出迴圈
fi
if [ $1 -eq $2 ]
then
echo "$1 = $2"
elif [ $1 -lt $2 ]
then
echo "$1 < $2"
fi
執行的結果:
[root@redhat shellscripts]# sh test.sh 1 1 1 = 1
[root@redhat shellscripts]# sh test.sh 1 2 1 < 2 ~