Tengo un programa que estoy intentando escribir que actualizará de forma remota todos los archivos dentro de un directorio en una Raspberry Pi 4b remota. Conozco los nombres de los archivos que deben permanecer en el directorio y nunca cambiarán. He visto ejemplos en los que un comando a la:
mv * !(filetostay) /destination
omitirá un archivo específico que se desea conservar, pero ¿hay alguna forma de ejecutarlo cuando hay varios archivos que deseo omitir? Además, los archivos no son consecutivos alfabéticamente ni de ninguna otra forma que se me ocurra, solo sé los nombres de los archivos.
Intenté ejecutar lo siguiente:
shopt -s extglob
mv * !(file1|file2) destination
pero al RPi no le gusta la sintaxis como dice
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
Respuesta1
Intentar
mv !(file1|file2) destination
El asterisco adicional significa la lista de todos los archivos no ocultos en pwd