PHP exec xargs 不执行,Linux中的xargs命令及示例
发布日期:2021-06-24 13:24:43 浏览次数:4 分类:技术文章

本文共 1268 字,大约阅读时间需要 4 分钟。

xargs是一个Linux/Unix功能强大的命令,用于从标准输入构建和执行命令行。它接受一个命令的输出并将其作为另一个命令的参数传递。xargs采用标准输入,用空格或换行符分隔,并使用后面跟有项目的任何参数执行命令一次或多次。标准输入上的空行将被忽略。

4f0577fa840c8a4185768c1a889f8b54.png

例子

示例1:将大量文件复制到另一个文件夹。

有时我们需要复制一长串文件,在这种情况下,cp命令失败,错误“参数列表太长”。我们可以使用xargs来完成这项任务。# find /home/linuxman/public_html/tecadmin.net/ -type f | xargs -n1 -i cp {} /var/www/backup/

示例2:从文件夹中删除多个文件。

有时我们要从文件夹中删除大量文件。下面的示例将从/ var / log目录中删除所有.log文件。# find /var/www/tmp/ -type f | xargs rm -f

上面的命令将无法删除带有空格的文件。要在xargs命令中处理空格,需要以下命令。# find /var/www/tmp/ -type f -print0 | xargs -0 rm -f

示例3:计算多个文件中的行数。

下面的示例将计算/opt目录及其子目录中每个.txt文件的行数# find /opt -name "*.txt" | xargs wc -l

要处理名称中包含空格的文件,需要使用以下命令。# find /opt/ -name "*.log" -print0 | xargs -0 wc -l

示例4:备份所有configuratin文件。

如果要备份系统中的所有configurtion文件(扩展名.conf),请使用以下命令。# find / -name "*.conf" | xargs tar czf config.tar.gz

# ls -l config.tar.gz

-rw-r--r--. 1 root root 193310 Apr 1 13:26 config.tar.gz

示例5:将custom delimeter与xargs一起使用。

我们也可以使用自定义删除器和xargs命令,默认情况下它使用空格和新行作为分隔符。使用-d参数定义分隔符。# echo "1,2,3,4,5" | xargs -d, echo

输出1 2 3 4 5

示例6:使用xargs以sepreate行显示输出。

在示例5中,输出以单行显示,我们还可以指定在单独行中显示每个输出。# echo "1,2,3,4,5" | xargs -d, -L 1 echo

输出1

2

3

4

5

示例7:处理文件名或路径中的空白区域。

要处理名称中的空格,请使用-print0和find命令,使用-0和xargs命令作为参数。# find /tmp -print0 | xargs -0 -L 1 echo

本篇文章到这里就已经全部结束了,更多精彩内容大家可以关注php中文网的其他相关栏目教程!!!

转载地址:https://blog.csdn.net/weixin_33137081/article/details/116112128 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:php 枚举cookie内容,php设置和获取cookie
下一篇:matlab 图中的legend,matlab中legend加图示命令的使用

发表评论

最新留言

很好
[***.229.124.182]2024年04月26日 08时18分59秒