Он был удален из тестирования еще в 2014 году - https://www.reddit.com/r/lisp/comments/2ery81/clisp_removed_from_debian_testing/
Похоже, он сейчас находится в sid - https://packages.debian.org/unstable/lisp/
Попробуйте этот. Измените команду «echo» на cp или mv после тестирования:
for f in samples.txt ; do
echo /source/path/*$(cut -d '|' -f 5,2 $f | tr '|'a-z '_'A-Z)*.pdf /destination/path
done
Прости, мой плохой. Спасибо @Kusalananda. Пожалуйста, считайте приведенный выше ответ неправильным и попробуйте этот. Предположим, вы фильтруете по 5 -и 4 -столбцам, он копирует файлы из /src в /dst :
.awk -F "|" '{system("cp /src/*"toupper($5)"_"$4"*.pdf /dst")}' samples.txt
Я бы подошел к этому с другой стороны:
Э.Г. (предполагает bash
и GNUmv
):
#!/bin/bash
shopt -s nullglob
while IFS='|' read -r loc a b c last first d e; do
echo mv --no-clobber -t path/to/target/ -- *_"$a"_"${last^^}"_*_*_*_*.pdf
done < file.txt
Удалите echo
, как только вы убедитесь, что он делает то, что вам нужно