find命令给出以下输出:
[root @ localhost /]#查找var / log / -iname anaconda。* var / log / anaconda.log var / log / anaconda.xlog var / log / anaconda.yum.log var / log / anaconda.syslog var / log / anaconda.program.log var / log / anaconda.storage.log
与tar结合后,将显示以下输出:
[root @ localhost /]#查找var / log / -iname anaconda。* -exec tar -cvf file.tar {} \; var / log / anaconda.log var / log / anaconda.xlog var / log / anaconda.yum.log var / log / anaconda.syslog var / log / anaconda.program.log var / log / anaconda.storage.log
但是在列出tar文件时,它仅显示一个文件
[root @ localhost /]#tar -tvf file.tar -rw -------根/根208454 2012-02-27 12:01 var / log / anaconda.storage.log
我在这里做错了什么?
使用xargs我得到以下输出:
[root @ localhost /]#查找var / log / -iname anaconda。* | xargs tar -cvf file1.tar
第二个问题
在var前面键入/时,表示find /var/log
为什么要赋予此Mesaage tar:从成员名称中删除前导“ /”
[root @ localhost /]#查找/ var / log / -iname anaconda。* -exec tar -cvf file.tar {} \; tar:从成员名称中删除开头的“ /” /var/log/anaconda.log tar:从成员名称中删除开头的“ /” /var/log/anaconda.xlog tar:从成员名称中删除开头的“ /” /var/log/anaconda.yum.log tar:从成员名称中删除开头的“ /” /var/log/anaconda.syslog tar:从成员名称中删除开头的“ /” /var/log/anaconda.program.log tar:从成员名称中删除开头的“ /” /var/log/anaconda.storage.log
以简单的形式,以下两个之间有什么区别?
find var/log
和 find /var/log
{} +
代替,{} \;
它将把find的结果分组为一个参数
find
命令时,应引用搜索词。它有时但并非总是如此工作。