Linux冷门却很重要的命令(五)---exec
来源:互联网 发布:仓管员用什么软件 编辑:程序博客网 时间:2024/06/05 02:52
exec解释:
exec是shell的内建命令,将并不启动新的shell,而是用要被执行命令替换当前的shell进程,并且将老进程的环境清理掉,而且exec命令后的其它命令将不再执行。因此,如果你在一个shell里面,执行exec ls那么,当列出了当前目录后,这个shell就自己退出了,因为这个shell进程已被替换为仅仅执行ls命令的一个进程,执行结束自然也就退出了。
本文主要讲解当exec命令来对文件描述符操作,也就是跟随find命令一起执行处理查找后的内容。find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的就可以派上用场了。
先使用实例:
先使用ll命令查看/mm目录下的文件
[root@10-9-62-247 mm]# ll
total 6204
-rwxrwxrwx 1 root root 8160 Jun 3 08:32 all_5.js
-rwxrwxrwx 1 root root 3337 Jun 27 20:19 control.php
-rw-r--r-- 1 root root 129 Jun 27 18:03 dch.sql
-rw-r--r-- 1 root root 27298 Jun 8 17:14 dirsync-1.11-1.el6.rf.x86_64.rpm
-rwxrwxrwx 1 root root 19052 Jun 1 12:07 install.sh
-rw-r--r-- 1 root root 6157869 Jun 3 11:58 master
-rwxrwxrwx 1 root root 12350 Jun 27 20:52 OperateControl.php
-rw-r--r-- 1 root root 114 Jun 22 10:28 permission.sql
-rwxrwxrwx 1 root root 8834 Jun 27 12:49 ScaleDaemon.py
-rwxrwxrwx 1 root root 6810 Jun 28 18:56 ServerJob.py
-rwxrwxrwx 1 root root 6638 Jun 27 20:19 SetupCore.php
-rwxrwxrwx 1 root root 42597 Jun 27 20:19 setup.html
-rw-r--r-- 1 root root 442 Jun 15 17:32 tb_player_chat.sql
-rw-r--r-- 1 root root 310 Jun 15 17:33 tb_player_complaint.sql
-rw-r--r-- 1 root root 3077 Jun 22 11:36 tb_user.sql
-rw-r--r-- 1 root root 92 Jul 19 19:10 test.yml
-rwxrwxrwx 1 root root 1407 Jun 27 20:19 util.php
-rwxrwxrwx 1 root root 723 Apr 13 16:33 WhitelistControl.php
-rw-r--r-- 1 root root 99 Jun 23 11:38 wk.sql
drwxr-xr-x 2 root root 4096 Jul 20 17:07 xihage
[root@localhost mm]# find -type f -exec ls -l {} \;
-rwxrwxrwx 1 root root 6810 Jun 28 18:56 ./ServerJob.py
-rw-r--r-- 1 root root 0 Jul 20 17:07 ./xihage/xiha.xiha
-rw-r--r-- 1 root root 3077 Jun 22 11:36 ./tb_user.sql
-rw-r--r-- 1 root root 92 Jul 19 19:10 ./test.yml
-rw-r--r-- 1 root root 129 Jun 27 18:03 ./dch.sql
-rwxrwxrwx 1 root root 42597 Jun 27 20:19 ./setup.html
-rw-r--r-- 1 root root 99 Jun 23 11:38 ./wk.sql
-rwxrwxrwx 1 root root 8834 Jun 27 12:49 ./ScaleDaemon.py
-rwxrwxrwx 1 root root 19052 Jun 1 12:07 ./install.sh
-rw-r--r-- 1 root root 114 Jun 22 10:28 ./permission.sql
-rw-r--r-- 1 root root 27298 Jun 8 17:14 ./dirsync-1.11-1.el6.rf.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 26 15:01 ./?
-rwxrwxrwx 1 root root 12350 Jun 27 20:52 ./OperateControl.php
-rw-r--r-- 1 root root 6157869 Jun 3 11:58 ./master
-rwxrwxrwx 1 root root 6638 Jun 27 20:19 ./SetupCore.php
-rwxrwxrwx 1 root root 3337 Jun 27 20:19 ./control.php
-rwxrwxrwx 1 root root 723 Apr 13 16:33 ./WhitelistControl.php
-rwxrwxrwx 1 root root 8160 Jun 3 08:32 ./all_5.js
-rwxrwxrwx 1 root root 1407 Jun 27 20:19 ./util.php
-rw-r--r-- 1 root root 442 Jun 15 17:32 ./tb_player_chat.sql
-rw-r--r-- 1 root root 310 Jun 15 17:33 ./tb_player_complaint.sql
说明:
上面的例子中,find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用ls -l命令将它们列出。
语法:
exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{}一个空格和一个\,最后是一个分号。
find XXX(find option) -exec XXX(cmd,对find出来的内容进行的操作){} \;
- Linux冷门却很重要的命令(五)---exec
- Linux冷门却很重要的命令(九)---dos2unix
- Linux冷门却很重要的命令(一)---iconv
- Linux冷门却很重要的命令(二)---pgrep
- Linux冷门却很重要的命令(三)---kill(pkill,killall)
- Linux冷门却很重要的命令(四)---sar
- Linux冷门却很重要的命令(六)---chattr(lsattr)
- Linux冷门却很重要的命令(七)---lsof
- Linux冷门却很重要的命令(八)---xargs
- 【Linux基础】管用的小冷门命令
- 冷门却使用的 javascript 技巧
- 一些冷门却有用的小知识
- Linux中的一个很重要的命令-vi
- 一些鲜为人知的但却很有趣的Unix/Linux命令(五)
- 一些鲜为人知的但却很有趣的Unix/Linux命令(五)
- CSS的2个冷门却又实用的选择器
- 一些冷门却很有用的php函数
- 冷门但是却能很好提升性能的android技能
- uml类图(Class Diagram)中类与类之间的关系及表示
- 流媒体基础知识TS流 PS流 ES流区别
- MySQL开启针对mysql的所有操作log
- CSS盒子模型
- lvs+keepalived防火墙问题
- Linux冷门却很重要的命令(五)---exec
- js数组与字符串的相互转化
- Android NDK环境搭建及JNI开发java和C的相互调用的基本介绍
- 非递归的fib与找出无重复的两个数
- Java对Excel(03,07)进行上传、解析、验证、入库
- HDU 1233 还是畅通工程 [最小生成树]
- The specified child already has a parent.You must call removeView() on the child's parent first问题
- 第一个博文
- yii2获取用户get,post参数