标签: xargs

使用 xargs cd 到一个目录

现在感觉自己像个白痴。为什么这不起作用?

echo "/some/directory/path" | xargs -n1 cd
Run Code Online (Sandbox Code Playgroud)

unix xargs

36
推荐指数
2
解决办法
2万
查看次数

替换 osx 中的 xargs -d

在 Linux 中,您可以使用以下顺序对四个不同的服务器xargs -d,快速运行hostname命令:

echo -n 1,2,3,4 |xargs -d, -I{} ssh root@www{}.example.com hostname

看起来 OSX xargs 命令不支持分隔符参数。您可以使用不同格式的echo或通过其他一些命令行实用程序获得相同的结果吗?

xargs macos

35
推荐指数
2
解决办法
2万
查看次数

为什么需要 xargs?

假设我想删除目录中除名为“notes.txt”的文件之外的所有文件。我会用管道来做到这一点,ls | grep -v "notes.txt" | xargs rm. 如果第二个管道的输出是 rm 应该使用的输入,为什么我需要 xargs?

为了进行比较,管道echo "#include <knowledge.h>" | cat > foo.c将回显的文本插入到文件中,而不使用 xargs。这两个管道有什么区别?

bash xargs pipe coreutils

31
推荐指数
2
解决办法
8966
查看次数

如何在 Linux 上使用 xargs 移动文件?

我正在尝试这个,但它不起作用:

ls file_* | xargs mv {} temp/
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

linux xargs mv

25
推荐指数
4
解决办法
3万
查看次数

在 linux 中带大括号和不带大括号的差异是什么?

我想知道这有什么区别

ls | xargs rm

ls | xargs -i{} rm {}

两者都为我工作

linux centos xargs

24
推荐指数
2
解决办法
1万
查看次数

为什么这不起作用?"ls *.txt | xargs cat &gt; all.txt"(将所有文件合并成单个txt文档)

为什么这不起作用?

ls *.txt | xargs cat > all.txt
Run Code Online (Sandbox Code Playgroud)

(我想将所有文本文件的内容加入一个“all.txt”文件中。) find 与 -exec 也应该可以工作,但我真的很想了解 xargs 语法。

谢谢

cat xargs pipe

23
推荐指数
1
解决办法
4万
查看次数

为整棵树递归创建符号链接

我正在寻找一个可以在不同目录中重新创建整个文件树的命令。我希望所有符号链接都是绝对的。我可以用 find 和 xargs 做到这一点吗?;-)

linux find xargs tree

23
推荐指数
2
解决办法
2万
查看次数

如何在 xargs 中同时使用两个参数?

我需要转换视频,但我不知道它们在哪里,所以我需要find它们。我怎么能放弃的结果和输出文件名的FFmpegxargs

我已经发现我可以用这个命令构造两个参数:

find . -iname "*.mov" -printf "%p %f\n"
Run Code Online (Sandbox Code Playgroud)

我在xargs手册中找不到任何相关内容。我想要这样的东西:

find . -iname "*.mov" -printf "%p %f\n" | xargs ffmpeg -i {param1} -f flv {param2}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

bash command-line xargs command-line-arguments

20
推荐指数
2
解决办法
2万
查看次数

将 strace 重定向到文件

我正在尝试跟踪 apache2。这些是我试图运行的命令。

ps auxw | grep sbin/apache | awk '{print"-p " $2}' | xargs strace >> trace.txt
Run Code Online (Sandbox Code Playgroud)

我试过

(ps auxw | grep sbin/apache | awk '{print"-p " $2}' | xargs strace ) >> trace.txt
Run Code Online (Sandbox Code Playgroud)

或者

ps auxw | grep sbin/apache | awk '{print"-p " $2}' | xargs strace | xargs >> trace.txt
Run Code Online (Sandbox Code Playgroud)

linux xargs

19
推荐指数
2
解决办法
5万
查看次数

xargs -I 替换-str 选项区别

根据我的理解,以下含义应该完全相同:

ls -1 | xargs file {}
ls -1 | xargs -I{} file {}
Run Code Online (Sandbox Code Playgroud)

如果未指定 -I 选项,则默认为 -I{}。

我想列出当前目录中的所有文件file并对每个文件运行命令。有些名字中有空格。但是,我注意到了差异。见下文:

$ ls -1
Hello World
$ ls -1 | xargs file {}
{}:    ERROR: cannot open `{}' (No such file or directory)
Hello: ERROR: cannot open `Hello' (No such file or directory)
World: ERROR: cannot open `World' (No such file or directory)
$ ls -1 | xargs -I{} file {}
Hello World: directory
Run Code Online (Sandbox Code Playgroud)

明确指定 -I{} 后,文件名中的空格会按预期处理。

bash xargs

19
推荐指数
1
解决办法
2万
查看次数

标签 统计

xargs ×10

linux ×4

bash ×3

pipe ×2

cat ×1

centos ×1

command-line ×1

command-line-arguments ×1

coreutils ×1

find ×1

macos ×1

mv ×1

tree ×1

unix ×1