En mi experiencia, rmdir prefiere trabajar en un directorio vacío. Si está intentando eliminar el directorio foo
, yo haría:
$rm foo/*
$rmdir foo
No ha especificado qué cliente SFTP está utilizando. Así que asumo OpenSSH SFTP (sftp
).
Comando rmdir
en OpenSSH, el cliente SFTP se asigna directamente a SSH_FXP_RMDIR
Solicitud de protocolo SFTP. La especificación SFTP para la versión 3 (la que usa OpenSSH) menciona específicamente que el SSH_FXP_RMDIR
la operación puede fallar, "si el directorio especificado no está vacío" (aunque no parece exigirlo).
Si el directorio no tiene subdirectorios, puede usar rm foo/*
(que significa comando OpenSSH SFTP, no comando shell) para eliminar primero todos los archivos en el directorio. Y luego usa rmdir
.