Verschieben aller Dateien in einem Verzeichnis mit Ausnahme einiger weniger auf RPi

Verschieben aller Dateien in einem Verzeichnis mit Ausnahme einiger weniger auf RPi

Ich versuche gerade ein Programm zu schreiben, das alle Dateien in einem Verzeichnis auf einem entfernten Raspberry Pi 4b remote aktualisiert. Ich kenne die Namen der Dateien, die im Verzeichnis bleiben müssen, und diese werden sich nie ändern. Ich habe Beispiele gesehen, bei denen ein Befehl wie folgt
mv * !(filetostay) /destination
eine bestimmte Datei überspringt, die bleiben soll, aber gibt es eine Möglichkeit, das auszuführen, wenn es mehrere Dateien gibt, die ich überspringen möchte? Außerdem sind die Dateien nicht alphabetisch oder auf eine andere mir einfallende Weise aufeinander folgend, ich kenne nur die Namen der Dateien.

Ich habe versucht, Folgendes auszuführen:
shopt -s extglob
mv * !(file1|file2) destination
aber dem RPi gefällt die Syntax nicht, wie sie lautet
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

Antwort1

Versuchen

mv !(file1|file2) destination

Das zusätzliche Sternchen bedeutet die Liste aller nicht versteckten Dateien in pwd

verwandte Informationen