У меня есть программа, которую я пытаюсь написать, чтобы удаленно обновить все файлы в каталоге на удаленном Raspberry Pi 4b. Я знаю имена файлов, которые должны остаться в каталоге, и они никогда не изменятся. Я видел примеры, когда команда a la:
mv * !(filetostay) /destination
пропускала определенный файл, который нужно оставить, но есть ли способ выполнить это, когда есть несколько файлов, которые я хочу пропустить? Кроме того, файлы не идут подряд в алфавитном порядке или каким-либо другим способом, который я могу придумать, я просто знаю имена файлов.
Я попробовал выполнить следующее:
shopt -s extglob
mv * !(file1|file2) destination
но RPi не нравится синтаксис, как он говорит
mv: cannot move 'destination' to a subdirectory of itself, 'destination/destination'
mv: warning: source directory 'destination' specified more than once
mv: cannot stat 'file1': No such file or directory
mv: cannot stat 'file2': No such file or directory
решение1
Пытаться
mv !(file1|file2) destination
Дополнительная звездочка означает список всех не скрытых файлов в pwd.