Wie werden unter Linux (Ubuntu) alle Dateien und Verzeichnisse in das übergeordnete Verzeichnis verschoben?
linux
ubuntu
file-management
slhck
quelle
quelle
Antworten:
Dadurch werden auch versteckte Dateien verschoben.
Sie erhalten die Nachricht:
wenn es versucht, zu verschieben
.
(aktuelles Verzeichnis), aber das wird keinen Schaden anrichten.quelle
-maxdepth 1
, um sicher zu sein../scripts' to
mich nicht bewegen ../scripts ': Verzeichnis nicht leerIch bin hierher gekommen, weil ich auch neu in diesem Thema bin. Aus irgendeinem Grund hat das oben Genannte nicht den Trick für mich getan. Was ich getan habe, um alle Dateien von einem Verzeichnis in das übergeordnete Verzeichnis zu verschieben, war:
quelle
(cd ${ANDROID_NDK_HOME}/android-ndk-r14b/ && mv * ../)
Geben Sie dies in die Shell ein:
Das verschiebt ALLE Dateien eine Ebene nach oben.
Der Charakter
*
ist ein Platzhalter. So*.deb
werden alle .deb - Dateien bewegen, undZeitgeist.*
wird Zeitgeist.avi und Zeitgeist.srt einen Ordner nach oben bewegen , da natürlich..
das Verzeichnis Eltern angibt.Um alles zu verschieben, einschließlich Ordner usw., verwenden Sie einfach
*
anstelle von*.*
quelle
*
keine*.*
VerzeichnisseEinfacher geht es nicht als:
So verschieben Sie auch versteckte Dateien:
mv
ist ein Befehl zum Verschieben von Dateien,*
bedeutet alle Dateien und Ordner und../
ist der Pfad zum übergeordneten Verzeichnis.quelle
In bash können Sie shopt -s dotglob verwenden , um * alle Dateien abzugleichen und sie einfach zu verschieben
Dies ist nicht die beste Lösung, da die Einstellung für die Shell permanent ist, bis Sie sie durch ändern
aber ich finde es gut zu wissen.
quelle
(shopt -s dotglob && mv * ..)
. Auf diese Weise ist die Option nur lokal für diese Subshell.Eine Methode, die keine Fehler verursacht und jedes Mal funktioniert:
quelle
Ich habe eine Variante von oben verwendet, um alle Dateien aus Unterordnern in den übergeordneten Ordner zu verschieben.
Ich hatte bis zum Jahr Daten in Ordnern, aber mithilfe von Metadaten konnte ich feststellen, dass sich alle Daten in demselben Ordner befanden, was die Verwaltung vereinfachte.
z.B.
quelle
Angenommen, alle Ihre versteckten Dateien beginnen mit einem Punkt, gefolgt von einem Buchstaben oder einer Zahl (die sie sollten), können Sie verwenden
Der
.[A-Za-z0-9]*
Teil ist, um sicherzustellen, dass Sie nicht versuchen, sich zu bewegen.
oder..
mitzumachen, was fehlschlagen würde.quelle
Unter Linux ist es einfach, alle Dateien und Ordner in das übergeordnete Verzeichnis zu verschieben.
Gehen Sie in diesen Ordner und verwenden Sie diesen Befehl:
Beispiel: Ihre Dateien und Ordner lauten wie folgt:
Gehe zu diesem Ordner via CD:
Alle Ihre Dateien und Ordner werden in den Ordner abcuser (übergeordnetes Verzeichnis) verschoben.
quelle
/the full path
funktioniert das unter Linux nicht, man muss Leerzeichen mit entkommen/the\ full\ path
.Verzeichnisse müssen nicht geändert werden. Fügen Sie einfach * am Ende des Pfades ein:
Oben werden nur nicht versteckte Dateien verschoben. Um nur versteckte Dateien zu verschieben, verwenden Sie. *
Über zwei können in einem Befehl kombiniert werden:
Siehe auch: So verschieben Sie alle Dateien einschließlich versteckter Dateien über * in das übergeordnete Verzeichnis
quelle
quelle
find
inwhile read
eine schlechte Methodefind
, und es wurden bereits bessere Antworten veröffentlicht.Wechseln Sie in das Unterverzeichnis und führen Sie den folgenden Befehl aus, um Dateien zu kopieren oder zu verschieben.
Beispiel: a ist das übergeordnete Verzeichnis und b ist das Unterverzeichnis. Wir möchten alle Dateien von b nach a (Unterverzeichnis in das übergeordnete Verzeichnis) verschieben / kopieren.
quelle