Гуглил, увидел 1000 и 1 способ, как список создать, и не нашёл ни одного, как провернуть сабж. Man cp читал.
Идеальный вариант - команда в консоль, но можно и с помощью хитрого софта.
Есть список пакетов. Вопрос в том как автоматизировать выборку нужных пакетов из одной папки и копирование в другую папку этих пакетов согласно списку.
Если задача просто скопировать кучу файла при наличии их названий в текстовом файле, то я бы открыл этот текст и воспользовался бы поиском-заменой. Найти [признак конца строки] и заменить на [признак конца строки cp пробел]. При необходимости можно варьировать пункт назначения. Потом всё это в буфер скопировать и вставить в консоли, кажется, должно получиться.
Кроме того, такие вещи можно решить, написав на awk и/или perl команду для консоли (но тут я уже не помогу).
Можно и так:
List.txt - текстовый файл со списком
$dest - куда копировать cp `cat List.txt` $dest
Здесь пробел или энтер в качестве разделителя роли большой не играет.
Единственное, как Катя тут сказала, - если имена файлов проблемные, то надо их в списке экранировать. Предложил данный способ на случай если все с именами в порядке и нужно побыстрей))
Есть список пакетов. Вопрос в том как автоматизировать выборку нужных пакетов из одной папки и копирование в другую папку этих пакетов согласно списку.
Если задача просто скопировать кучу файла при наличии их названий в текстовом файле, то я бы открыл этот текст и воспользовался бы поиском-заменой. Найти [признак конца строки] и заменить на [признак конца строки cp пробел]. При необходимости можно варьировать пункт назначения. Потом всё это в буфер скопировать и вставить в консоли, кажется, должно получиться.
Кроме того, такие вещи можно решить, написав на awk и/или perl команду для консоли (но тут я уже не помогу).
Кать, предложил бы сделать так: cp "$line" $2, чтобы cp не думал, что, например, My CV.txt - это два отдельных файла.
Спасибо! Примерно до такого же решения дошла пару часов назад.
Можно и так:
List.txt - текстовый файл со списком
$dest - куда копировать
cp `cat List.txt` $dest
Здесь пробел или энтер в качестве разделителя роли большой не играет.
Единственное, как Катя тут сказала, - если имена файлов проблемные, то надо их в списке экранировать. Предложил данный способ на случай если все с именами в порядке и нужно побыстрей))
Всем спасибо! Такая тривиальная задача и такие интересные решения!
Отправить комментарий