linux - 构建后将文件复制到终端上显示的位置的 Shell 脚本

标签 linux shell scripting terminal

<分区>

我已经编写了一个用于自动化的 shell 脚本。我想知道如何将终端上显示的位置放入一个变量中,并使用包含该位置的变量将该位置的特定文件复制到另一个位置。

更具体地说: 我运行了一个命令说“构建”文件名。 文件编译成功后,它会显示文件在终端上的存储位置。 我想将文件从屏幕上显示的那个位置复制到另一个位置。

提前致谢!:)

最佳答案

如果你的构建命令只输出生成的输出文件,你可以将它提供给 xargscp,例如像这样:

$ ./build.sh | xargs -I % cp % target_folder

这会将 build.sh 的输出提供给 xargs,后者将获取输出并将其提供给 cp。如果您还有一些其他消息,那么您将不得不进行一些线路处理。 例如,假设您在那里也有一些构建消息等。

$ ./build.sh
"Building ver 23"
"bla bla"
"Build complete:"
"/path/to/build/dir/output1"
"/path/to/build/dir/output2"

我们可以 grep 例如当前路径(命令 pwd)或目标构建路径(或者你知道的其他东西,例如是否有一个固定的二进制名称不在日志消息中)?:

$ ./build.sh | grep `pwd` | xargs -I % cp % target_folder

编辑:糟糕的打字错误,-I 当然是输入参数,而不是 +I

关于linux - 构建后将文件复制到终端上显示的位置的 Shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18911859/

相关文章:

ruby - 检测 USB 设备连接/分离并发送电子邮件

linux - mkfs.xfs 包含一个挂载的文件系统

linux - [ bash ] : Handling many signals

bash - 如何检查目录是否有子目录?

c - 使用tftp linux客户端测试TFTP服务器代码

linux - 在 MPI 集群上运行 C 程序

perl - Linux命令根据第二个单词/字符排序

python - 退出脚本后如何返回到 python shell?

scripting - 纳米黑客 : most useful tiny programs you've coded or come across

javascript - 我该如何判断外部javascript是否未运行或未回显?又为什么