![单个文件中复制命令的源路径和目标路径那么如何复制?](https://linux22.com/image/107470/%E5%8D%95%E4%B8%AA%E6%96%87%E4%BB%B6%E4%B8%AD%E5%A4%8D%E5%88%B6%E5%91%BD%E4%BB%A4%E7%9A%84%E6%BA%90%E8%B7%AF%E5%BE%84%E5%92%8C%E7%9B%AE%E6%A0%87%E8%B7%AF%E5%BE%84%E9%82%A3%E4%B9%88%E5%A6%82%E4%BD%95%E5%A4%8D%E5%88%B6%EF%BC%9F.png)
我有一个包含源文件路径和目标文件路径的文件。
例子
$ cat test.txt
/home/data/source.txt /home/code/destination.txt
/home/abc/def.txt /home/mnp/xyz.txt
这里我想复制/home/data/source.txt
到/home/code/destination.txt
(cp /home/data/source.txt /home/code/destination.txt
)
我在一个文件中有很多源路径和目标路径
所以我想要一个可以将文件从源路径复制到目标路径的命令。
谢谢。
答案1
这是一个想法:
- 复制您的文件:
cp test.txt test.sh
- 放在
cp
每行的开头:sed -i 's/^/cp / test.sh
- 使文件可执行:
chmod +x test.sh
- 执行文件:
./test.sh
答案2
cat test.txt | xargs -L 1 cp -v
在哪里:
test.txt
是你的输入文件xargs -L 1
将一一列出行并运行cp
是copy
命令-v
是否有可见性并可供检查