In diesem Beitrag werden mehrere Dateien vom Remote-Server entfernt, wenn eine Verbindung ohne SFTP-Kennwort eingerichtet wird. Ich habe den Code wie folgt. Nur die erste Datei in der Variablen $file_list
wird gelöscht, wenn ich die Variable als
$file_list="file1 file2"
sftp $USER@$HOST
rm $file_list
quit
SFTP-Session
Ich habe sogar versucht, die Befehle im Eingabeaufforderungsmodus auszuführen.
sftp $USER@$HOST
rm file1 file2
Ich sehe jedoch immer noch, dass nur Datei1 gelöscht wird.
Ich bin nicht sicher, ob mir ein grundlegender Befehl fehlt. Ich versuchte mdelete
/ mdel
/ mrm
, die als abgelehnt wurden Ungültiger Befehl in SFTP Aufforderung.
Sie können dem
rm
Befehl in keine Liste geben, sondernsftp
nur einen Pfad wie in der Manpage beschrieben:quelle
Normalerweise
Setup - auf dem Remote Server Skinner jetzt löschen wirlftp
mache ich das so.So erstellen Sie einen einzelnen Befehl:
quelle
Wenn Sie sftp können, können Sie nicht ssh ausführen? Wenn ja, dann ein Befehl wie:
sollte gut funktionieren. Wenn Sie öffentliche / private SSH-Schlüssel verwenden, erfolgt keine Passwortabfrage.
quelle
Wenn das die Dateinamen sind. Sie können sie mit einem Glob-Muster löschen
quelle