个人工具
登录
查看“Shell编程基础”的源代码 - Ubuntu中文
页面
讨论
查看源代码
历史
搜索
导航
首页
最近更改
随机页面
页面分类
帮助
编辑
编辑指南
沙盒
新闻动态
字词处理
工具
链入页面
相关更改
特殊页面
页面信息
查看“Shell编程基础”的源代码
来自Ubuntu中文
←
Shell编程基础
跳转至:
导航
,
搜索
因为以下原因,你没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
=== && 和 || 操作符 === 熟悉C语言的朋友可能会喜欢下面的表达式: <source lang=bash>[ -f "/etc/shadow" ] && echo "This computer uses shadow passwords"</source> 这里的 && 就是一个快捷操作符,如果左边的表达式为真(返回 0——“成功”)则执行右边的语句,你也可以把它看作逻辑运算里的与操作。上述脚本表示如果/etc/shadow文件存在,则打印“This computer uses shadow passwords”。 同样shell编程中还可以用或操作 (||),例如: <source lang=bash>#!/bin/bash mailfolder=/var/spool/mail/james [ -r "$mailfolder" ] || { echo "Can not read $mailfolder"; exit 1; } echo "$mailfolder has mail from:" grep "^From " $mailfolder</source> 该脚本首先判断mailfolder是否可读,如果可读则打印该文件中以"From"开头的行。如果不可读则或操作生效,打印错误信息后脚本退出。需要注意的是,这里我们必须使用如下两个命令: <source lang=bash>{ echo "Can not read $mailfolder"; # 打印错误信息 exit 1; # 退出程序 }</source> 我们使用花括号以组合命令的形式将两个命令放到一起作为一个命令使用。即使不用与和或操作符,我们也可以用if表达式完成任何事情,但是使用与或操作符会更便利很多。 要注意 Shell 中的 && || 程序流操作符不表现任何优先级区别,完全是先看到谁就先处理谁的关系。
返回至
Shell编程基础
。