У меня есть единственный файл, который содержит пути к исходным файлам и пути к файлам назначения.
пример
$ 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
)
У меня так много исходного и целевого пути в одном файле
Поэтому мне нужна команда, с помощью которой я могу скопировать файл с исходного пути на целевой.
Спасибо.
Вот идея:
cp test.txt test.sh
cp
в начале каждой строки: sed -i 's/^/cp / test.sh
chmod +x test.sh
./test.sh
cat test.txt | xargs -L 1 cp -v
where:
test. txt
- ваш входной файлxargs -L 1
перечислит строки одну за другой и выполнитcp
- команда copy
-v
- для наглядности и для проверки