Как копировать целевые файлы с помощью символических ссылок и списка имен файлов

Анализ синтаксиса оболочки — это огромная работа, и обычно непростая.

Однако, если вы можете запустить строку один раз, вы можете позволить оболочке сделать это с помощьюset -x:

wsl@win10:~ $ set -x
wsl@win10:~ $ echo 1 && ls haha &> /dev/null; pwd
+ echo 1
1
+ ls --color=auto haha
+ pwd
/home/wsl
wsl@win10:~ $

Как вы можете заметить, есть одно предостережение:aliasрасширение (все расширение, на самом деле ).

Извлечение фактических команд, вероятно, было бы интересным после -школьного задания для читателей (подсказки :строк, начинающихся с плюса и пробела ).

0
30.03.2021, 03:51
1 ответ

Это работало с использованием цикла и cp -Lвместо readlink. Я выполнил следующую команду в папке, содержащей символические ссылки:

for item in $(cat /path/dir/list.txt); do cp -L $item /path/targetdir; done

также у меня были проблемы с кодировкой txt-файла (, связанные с его созданием в R, но на компьютере с Windows ).

0
28.04.2021, 22:55

Теги

Похожие вопросы