- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
- 前后命令串行执行
- 前后命令相互独立
练习 1:
在当前目录下创建一个新子目录 test ,在 test 中创建一个新文件 demo1。要求使用顺序的方
式把命令写在一行上。补全如下命令:
_______ test; _______ demo1
易错:mkdir test; touch demo1 # /012 34567 8098 :;
正确:mkdir test; cd test; touch demo1 = mkdir test; touch test/demo1
练习 2:
继续上面的状态如下操作:
rm -rf test # !#$% test ()*+,-.demo1
touch test # %/012 3453 -.
mkdir test; touch test/demo1 # 6789:;=?@AB
上述命令执行的结果会 出现两次错误。
• mkdir 命令出错,因为有同名的文件 test 存在,所以创建 test 目录出错;
• touch 命令出错,因为 test 目录没有,所以test 目录中创建文件的操作出错。
说明 touch 命令需要在 mkdir 命令的基础上才能执行,但是采用顺序的组合方式,前后
命令相互独立,所以即使 mkdir 不成功,touch 命令依然会执行。
可见有的时候前面的命令对后续命令存在影响,顺序组合方式不能体现,就需要使用逻
辑或和与的命令组合。
1.4 和 ||
逻辑表达式的或和与的短路原则:
expr1 与 expr2 # 若 expr1 为假,则不用计算 expr2,整体结果为假
expr1 或 expr2 # 若 expr1 为真,则不用计算 expr2 ,整体结果为真
命令不是逻辑表达式,没有真假,只有成功与失败。但是采用类似短路原则的方式可以
理解 。
command1 command2 [ command3]...
如果 cmd1 命令执行成功,则执行 cmd2,否则不执行 cmd2 。后面依次类推 。可以理解
为一直执行到某个命令执行不成功为止 。
command1 || command2 [|| command3]...
如果 cmd1 命令执行不成功,则执行 cmd2,否则仅执行 cmd1 。后面依次类推 。可以理
解为一直执行直到某个命令执行成功为止 。
练习 3:
在练习 2 的基础上继续如下修改命令,使用“ ”符号:
mkdir test touch test/demo1
这次只有 mkdir 命令一次错误,touch 命令没有执行,所以没有错误。
练习 4:
请使用 ping 命令测试主机的连通性,能够连通主机时打印 success,否则打印 failure 。
不要其他输出。
是固定的将标准输出和标准错误输出都重定 向。但是实践 8 中的写法则可以重定 向其他输
出和输入。
示例:连接并获取百度主页。
ls -l /proc/$$/fd # 查看当前进程打开的文件描述符
exec 8/dev/tcp//80 # 创建 8 号文件描述符连接百度
ls -l /proc/$$/fd # 再次查看变化
echo -e GET / HTTP/1.0\n 18 # 发送请求,复制 8 号描述符作为标准输出
cat 08 # 获取响应,复制 8 号描述符作为标准输入
练习 9:
参照上述过程,修改命令,访 问并获取杭电主页 。
问题 :成功获得了杭电主页吗,请分析原因。
提示:502 的错误代码页面,原因是 “不能通过IP 地址访 问”。
杭电 IP 地址获取:
ping -c 1
复制 IP 地址,粘贴到浏览器中直接通过 IP 地址访 问杭电服务器,观察与命令行获得的
是否一样。
练习 10:
关闭打开的 socket 描述符。
exec 8-
重定 向是命令行上重要的输入输出相关的知识,请多多练习加 以掌握。
您可能关注的文档
- (2.12)--12. Linux系统及应用压缩与打包.pdf
- (2.12)--船舶电台呼号识别码应答码等相关知识.pdf
- (2.13)--13. Linux系统及应用处理文本.pdf
- (2.13)--烽火轮海事卫星通信—Inmarsat篇.pdf
- (2.14)--烽火轮聊COSPAS-SARSAT系统(1).pdf
- (2.15)--15. Linux系统及应用系统资源监控.pdf
- (2.15)--烽火轮聊COSPAS-SARSAT系统(2).pdf
- (2.16)--16. Linux系统及应用管理磁盘分区.pdf
- (2.16)--烽火轮聊全球海上遇险与安全系统GMDSS.pdf
- (2.17)--17. Linux系统及应用日志系统.pdf
- (2.17)--救生衣可以装AIS吗.pdf
- (2.18)--18. Linux系统及应用计划任务.pdf
- (2.18)--连云港海岸电台通信设备发展史.pdf
- (2.19)--19. Linux系统及应用文本编辑器.pdf
文档评论(0)