Solaris sftp: удалить удаленную папку

Кто-нибудь знает, как удалить удаленный каталог через sftp? sftp не поддерживает «rm -r», а только «rm», поэтому единственный способ, который я вижу, это сохранить дерево удаленных папок в файле с префиксом «rm», а затем выполнить sftp -b file И поскольку sftp не поддерживает «ls -lR "либо я должен использовать "ls -l" в цикле для создания такого файла.

Есть ли более простой способ? Заранее спасибо.


person Nick    schedule 23.11.2011    source источник
comment
Попробуй, лфп. Если вы хотите удалить каталог foo и все его подпапки, rm -r foo должно работать.   -  person cic    schedule 22.05.2014


Ответы (3)


Сделал бы del -s то, что вы хотите сделать?

person djdy    schedule 23.11.2011

rm -r, кажется, отлично работает для рекурсивного удаления удаленного каталога с файлами в нем.

$ sftp --version
sftp: SSH Tectia Client 6.0.2 on sparc-sun-solaris2.8
Build: 84
Product: SSH Tectia Client
License type: commercial
SFT API: 2.0.3 (build 6.0.2.84)
person Raihan    schedule 23.11.2011
comment
не работает на SunOS ucmpr 5.10 Generic_144488-06 sun4us sparc FJSV,GPUZC-M - person Nick; 24.11.2011

http://linux.about.com/od/commands/l/blcmdl1_sftp.htm показывает, что вы можете использовать rmdir

см. ответ на https://superuser.com/questions/595401/why-is-sftp-rmdir-not-working

прямая цитата Криса:

In my experience, rmdir prefers to work on an empty directory. If you're trying to delete the directory foo, I would do:

$rm foo/*
$rmdir foo
person Stuart    schedule 09.07.2012
comment
Однако обратите внимание, что ваш обновленный ответ не работает, если у вас есть файлы/каталоги в каталогах в каталоге foo. (Т.е. это не общее решение.) - person cic; 22.05.2014