Verschieben Sie alle Dateien in Unterordnern in den übergeordneten Ordner.

Verschieben Sie alle Dateien in Unterordnern in den übergeordneten Ordner.

Nehmen wir an, ich habe einen Pfad wie diesen

/x/xx/file

Ich möchte alle Dateien in den Unterordnern gleichzeitig verschieben /x/. /x/Ist das möglich?

Ich verwende Ubuntu 16.04.

Die Unterordner haben unterschiedliche Namen und ich möchte alle Dateien in einem Unterordner, unabhängig von der Tiefe, nach verschieben /x/. Außerdem ist es möglich, dass ich darin zusätzliche Dateien habe, /x/die sich in keinem Unterordner befinden. Keine Datei sollte höher verschoben werden, /x/egal was passiert.

Antwort1

Zum Zielordner wechseln und ausführen:

find . -mindepth 2 -type f -print -exec mv {} . \;

damit -mindepth 2wird eine rekursive Suche durchgeführt, ohne das aktuelle Verzeichnis einzubeziehen.

Antwort2

Dies funktioniert abhängig von der Anzahl der Unterverzeichnisse

mv */* .

Antwort3

Dieses Python-Skript sollte unter Windows funktionieren:

import pyautogui
import keyboard
import time

# Pause for a few seconds to give you time to switch to the window you want to automate
time.sleep(10)
print("10sec")

while True:
    pyautogui.press('enter')
    print("Pressed Enter key")
    time.sleep(1)
    pyautogui.hotkey('ctrl', 'a')
    print("Pressed Ctrl+A keys")
    pyautogui.hotkey('ctrl', 'x')
    print("Pressed Ctrl+X keys")
    pyautogui.press('backspace')
    print("Pressed Backspace key")
    time.sleep(3)
    pyautogui.hotkey('ctrl', 'v')
    print("Pressed Ctrl+V keys")
    pyautogui.press('delete')
    print("Pressed Delete key")
    time.sleep(1)
    pyautogui.press('enter')
    print("Pressed Enter key")
    time.sleep(1)
    pyautogui.press('right')
    print("Pressed Right Arrow key")
    pyautogui.press('left')
    print("Pressed Left Arrow key")

    # Listen for the Esc key press and stop the script if detected
    if keyboard.is_pressed('Esc'):
        break

Hinweis: Es löscht auch den Unterordner

verwandte Informationen