Podle mých zkušeností rmdir preferuje práci na prázdném adresáři. Pokud se pokoušíte smazat adresář foo
, udělal bych:
$rm foo/*
$rmdir foo
Neuvedli jste, jakého SFTP klienta používáte. Předpokládám tedy OpenSSH SFTP (sftp
).
Příkaz rmdir
v OpenSSH SFTP klient mapuje přímo na SSH_FXP_RMDIR
Požadavek protokolu SFTP. Specifikace SFTP pro verzi 3 (ta, kterou používá OpenSSH) konkrétně uvádí, že SSH_FXP_RMDIR
operace může selhat, "pokud zadaný adresář není prázdný" (i když se nezdá, že by to nařizovalo).
Pokud adresář nemá podadresáře, můžete použít rm foo/*
(což znamená příkaz OpenSSH SFTP, nikoli příkaz shell), chcete-li nejprve odstranit všechny soubory v adresáři. A pak použijte rmdir
.
Rekurzivně vypisujte úplnou absolutní cestu souborů s oprávněními v Linuxu
Jak načíst informace o video souboru z příkazového řádku pod Linuxem?