【问题标题】:Git Bash Windows:piping output of ls -t|head -n 3 to cpGit Bash Windows:将 ls -t|head -n 3 的管道输出到 cp
【发布时间】:2018-04-24 14:03:51
【问题描述】:

我想使用 Git Bash 将我最近下载的 3 个文件复制到另一个目录。我可以使用列出它们

ls -t ~/Downloads|head -n 3

,但是我如何将它们作为输入传递给 cp 函数,以便我可以 将它们复制到其他目录?

我对编程和 Bash 还很陌生,所以如果这很明显,我深表歉意。

【问题讨论】:

  • 这与git无关,实际上只是一个bash问题。您正在寻找的是 xargs。

标签: bash git-bash


【解决方案1】:

注意:您不需要 git bash 来复制这些文件:如果您已将 <git>/usr/bin 添加到您的 %PATH%(如 I do here, with this simplified PATH),您可以在任何常规 CMD 会话中执行该 Linux 命令序列:

vonc@VONC D:\git\git
> where xargs
D:\prgs\git\latest\usr\bin\xargs.exe

vonc@VONC D:\git\git
> ls -t|head -3|xargs | xargs -I\{\} echo  "{}" a
wt-status.h wt-status.c worktree.h a

另见“pass output as an argument for cp in bash”,其中提到了 xargs。
另一个选项 (cp $(ls -t | head -3) Directory) 只能在 bash 中。

【讨论】:

  • 感谢您的回复!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-23
  • 2013-10-23
  • 1970-01-01
  • 2016-06-18
  • 1970-01-01
  • 1970-01-01
  • 2012-07-12
相关资源
最近更新 更多