• exec


    exec并不启动新的shell,而是用要被执行的命令替换当前shell进程,并且将老进程的环境清掉,而且exec命令厚的其他命令将不再执行,
    假设在一个shell中执行 exec echo 'hello' 在正常的输入一个hello后shell会退出,因为这个shell进程已经被替换成仅仅执行echo命令的一个进程,执行结束自然就退出了

    命令执行结束,退出shell,然后后一直卡死在那

    要避免出现这种状况,一般见exec放到一个shell脚本中,由主脚本调用这个脚本,主脚本在调用子脚本执行时,当执行到exec后,该子脚本进程就被替换成相应的exec命令,
    注意source 或者 . 号,不会为新脚本新建shell,知识将脚本包含的命令在当前shell执行,

    exec典型用法是与find联用,用find找到匹配的文件,然后交给exec处理

    find / -name "*.conf" -exec ls -l {} ;
    
    find / -name "*.conf" -exec rm -f {} ;
    
  • 相关阅读:
    python 2 和 python 3 的区别
    random模块、time模块、sys模块、os模块
    正则表达式
    生成器 推导式 生成器表达式
    免费的论文查重网站
    Django 13
    pycharm连接mysql出错解决方案
    前端 51
    前端 50
    前段 49
  • 原文地址:https://www.cnblogs.com/cizao/p/11632517.html
Copyright © 2020-2023  润新知