cp: fts_open: Fehler „Keine solche Datei oder kein solches Verzeichnis vorhanden“

cp: fts_open: Fehler „Keine solche Datei oder kein solches Verzeichnis vorhanden“

Ich habe dieses Skript:

    #!/bin/sh -x

    /bin/echo "Drag folder into Terminal and hit return ->"
    /usr/bin/read folderLocation

    /bin/cp -R "$folderLocation" /Users/my/Desktop/

Und es gibt zurück:

+ /bin/cp -R '' /Users/my/Desktop/
cp: fts_open: No such file or directory

Irgendeine Idee, warum das so ist?

Vielen Dank für alle Einblicke!

Antwort1

Ich habe Folgendes unter Debian Gnu/Linux zum Laufen gebracht:

#!/bin/sh -x

/bin/echo "Drag folder into Terminal and hit return ->"
read folderLocation

eval "cp -R  -t '/home/my/Desktop' $folderLocation"

Ich habe den Pfad zum Lesen gelöscht (das müssen Sie möglicherweise nicht tun (Lesen ist in Bash integriert und kann in /usr/binoder nicht gefunden werden /bin)).

Wichtige Änderungen finden Sie in der letzten Zeile:

  • Die Option -t gefolgt vom Zielverzeichnis macht cp robuster.
  • „eval“ ist aufgrund der Anführungszeichen um den Rückgabewert von read erforderlich.

Warum Sie '' (leere Zeichenfolge beim Lesen) erhalten, liegt meiner Meinung nach daran, dass Drag & Drop nicht funktioniert. Dies ist keine Funktion der Shell, sondern des Terminals und des Dateimanagers. Welches Terminalprogramm verwenden Sie?

verwandte Informationen