介绍某些 Linux 命令从标准输入 (stdin) 和命令行参数中获取输入。然而,其他人被设计为仅将输入作为参数。为了能够处理标准输入,这些Linux 命令需要使用该xargs
命令。
如何使用Linux xargs命令?在本教程中,你将学习如何使用 Linuxxargs
命令来操作标准输入并使用其他命令,包括Linux xargs命令用法示例。
先决条件
- 一个运行 Linux 的系统
- 访问命令行
xargs
命令构建并执行通过标准输入提供的命令。它接受输入并将其转换为另一个命令的命令参数。该特征是在文件管理,其中,特别有用的xargs
组合使用与rm
,cp
,mkdir
,和其它类似命令。如何在示例中使用 xargs 命令单独使用时,
xargs
提示用户输入一个文本字符串,然后将其传递给echo
命令。文章图片
该示例显示了一个示例输入,后跟
echo
命令的输出。注意: echo 命令是一个内置的 Linux 功能,它将参数打印为标准输出。
echo
通常用于将文本字符串或命令结果显示为消息。了解可以在 Linux 中使用echo 命令的所有不同方式。将 xargs 与 find 结合使用
如何使用Linux xargs命令?find 命令通常位于
xargs
管道之前。使用它来提供文件列表以供xargs
. 语法如下所示:find [
location] -name "[
search-term]" -type f | xargs [
command]
文章图片
上面的示例演示了使用该
find
命令查找所有具有.sh
扩展名的文件。然后文件列表通过管道传送到xargs
,它使用rm
命令删除它们。【如何使用Linux xargs命令(用法示例指南)】但是,
xargs
不会自动包含名称中包含空格的文件。要也包含这些文件,请使用-print0
选项 forfind
和-0
选项xargs
:find [
location] -name "[
search-term]" -type f -print0 | xargs -0 [
command]
文章图片
rm
现在删除所有带有.sh
扩展名的文件。将 xargs 与 grep 结合
Linux xargs命令用法示例:
xargs
与grep 命令 一起使用可在该命令提供的文件列表中搜索字符串find
。find . -name '[
search-term]' | xargs grep '[
string-to-find-in-files]'
文章图片
上面的示例搜索所有带有
.txt
扩展名的文件并将它们通过管道传输到xargs
,然后grep
对它们执行命令。Xargs 多个命令
如何使用Linux xargs命令?要使用 运行多个命令
xargs
,请使用该-I
选项。语法是:[
command-providing-input] | xargs -I % sh -c '[
command-1] %;
[
command-2] %'
文章图片
在示例中,
file4.txt
首先显示的内容。然后mkdir
为文件中的每个单词创建一个文件夹。从文件中读取项目
如前所述,
xargs
读取标准输入。使用该-a
选项来读取文件的内容。xargs -a [
filename]
文章图片
使用 tar 查找和存档图像
当与tar 命令一起使用时,
xargs
创建一个tar.gz
存档并用该find
命令提供的文件填充它。find [
location] -name "[
search-term]" -type f -print0 | xargs -0 tar -cvzf [
tar-gz-archive-name]
文章图片
打印命令
要查看
xargs
标准输出中执行的命令,请使用该-t
选项。[
command-providing-input] | xargs -t [
command]
文章图片
在上面的示例中,请注意
xargs
对.mkdir提供的整个字符串执行了mkdir 命令echo
。批准 xargs 命令执行
Linux xargs命令用法示例:某些
xargs
操作(如删除文件和文件夹)是不可逆的。要控制这些命令的执行,请使用该-p
选项。[
command-providing-input] | xargs -p [
command]
文章图片
当你使用该
-p
选项执行命令时,xargs
会在执行前显示确认行。键入y
以继续或n
取消操作。限制每行输出
Linux xargs命令使用教程:有时需要同时控制参数的数量
xargs
。使用-n
后跟你限制xargs
为的参数数量的选项执行此操作:[
command-providing-input] | xargs –n [
number] [
command]
在下面的示例中,
xargs
从echo
命令中获取字符串并将其拆分为三个。然后它echo
为每个部分执行另一个:文章图片
指定分隔符
默认
xargs
分隔符是空格。要更改默认分隔符,请使用-d
后跟单个字符或转义字符的命令,例如n
(换行)。[
command-providing-input] | xargs -d [
new-delimiter] | xargs [
command]
在下面的示例中,该
xargs
命令指示系统*
用作分隔符并应用于mkdir
每个获得的参数。文章图片
列出系统上的所有 Linux 用户帐户
如何使用Linux xargs命令?使用
xargs
组织命令,如输出cut
。考虑以下示例:cut -d: -f1 <
/etc/passwd | sort | xargs
该
cut
命令访问/etc/passwd
文件并使用:
定界符剪切文件中每一行的开头。输出然后通过管道传输到sort
,它对接收的字符串进行排序,最后xargs
显示它们:文章图片
注意:有关列出用户的其他方法,请阅读如何在 Linux 中列出用户。
删除字符串中的空格
由于
xargs
在查找参数时会忽略空格,因此该命令可用于从字符串中删除不必要的空格。echo "[
string-with-unnecessary-spaces]" | xargs
文章图片
列出每个文件中的行数/字数/字符数
Linux xargs命令用法示例:
xargs
与wc
命令一起使用可显示包含行数、字数和字符数的文件列表。ls | xargs wc
下面的示例指示ls 命令
xargs
仅通过管道传输到包含单词“example”的文件。xargs
然后应用于wc
该列表:文章图片
将文件复制到多个目录
如何使用Linux xargs命令?使用
xargs
命令将文件复制到多个目录。语法很简单:echo [
directory-1] [
directory-2] | xargs -n 1 cp -v [
filename]
文章图片
该
echo
命令提供目录名称,并xargs
使用cp 命令将给定文件复制到每个目录中。Linux xargs命令使用教程总结完成本教程后,你应该知道如何使用该
xargs
命令。这篇文章提供了一个命令选项列表,并展示了如何xargs
与经常使用的命令结合使用。推荐阅读
- 如何在Linux中使用Modprobe命令(用法示例指南)
- Virtualbox与VMware比较(有什么区别(哪个更好?))
- 如何修复SSH失败Permission Denied (publickey,gssapi-keyex,gssapi-with-mic)
- 如何修复SSH Connection Refused错误(详细指南)
- 硬盘安装器windows7下载
- windows 7 激活系统图文图文详细教程
- windows764位旗舰版升win10系统图文图文详细教程
- 雨林木风windows7 64位旗舰版系统下载
- ghost windows7 64位系统激活密钥大全自制步骤