Linux shell 编程文件比较
文件比较允许你测试Linux 文件系统上文件和目录的状态
| 比较 | 描述 | 
| -d file | 检查file是否存在并是一个目录 | 
| -e file | 检查file是否存在 | 
| -f file | 检查file是否存在并是一个文件 | 
| -r file | 检查file是否存在并可读 | 
| -s file | 检查file是否存在并非空 | 
| -w file | 检查file是否存在并可写 | 
| -x file | 检查file是否存在并可执行 | 
| -O file | 检查file是否存在并属当前用户所有 | 
| -G file | 检查file是否存在并且默认组与当前用户相同 | 
| file1 -nt file2 | 检查file1 是否比file2 新 | 
| file1 -ot file2 | 检查file1 是否比file2 旧 | 
jump_directory=/home/wa/
if [-d $jump_directory]
then
如果jump_directory存在并是一个目录,那么then 后面的命令将会被执行
符合条件测试
if -then 语句允许你使用布尔逻辑来组合测试,有两种布尔运算可用
[condition1] &&[condition2] 两个条件都满足,then 部分的代码才会执行
[condition1] || [condition2] 只要满足一个条件,then 部分的代码就会被执行
if -then的高级特性
bash shell提供了两项可以在if -then 语句中使用的高级特性:
- 用于数学表达式的双括号
- 用于高级字符串处理功能的双方括号
使用双括号
| 符号 | 描述 | 
| var++ | 后增 | 
| var-- | 后减 | 
| ++var | 先增 | 
| --var | 先减 | 
| ! | 逻辑求反 | 
| ~ | 位求反 | 
| ** | 幂运算 | 
| << | 左位移 | 
| >> | 右位移 | 
| & | 位布尔和 | 
| | | 位布尔或 | 
| && | 逻辑和 | 
| || | 逻辑或 | 
var1=10
if (($var1**2>90))
then
((var2=$var1*2))
    生而为人,与众不同
 
    
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号