2011-11-23 206 views
1

有谁知道如何通过sftp删除远程目录? sftp不支持“rm -r”只有“rm”,所以我看到的唯一方法是将远程文件夹树保存在具有“rm”前缀的文件中,然后执行sftp -b file 并且由于sftp不支持“ls -lR“或者我必须在循环中使用”ls -l“来创建这样一个文件。solaris sftp:删除远程文件夹

有没有更简单的方法? 在此先感谢。

+0

尝试,lftp的。如果你想删除目录'foo'和它的所有子文件'rm -r foo'应该可以工作。 – cic

回答

1

del -s做你想要做的?

+1

我得到“无效的命令”((( – Nick

1

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) 
+0

不能在SunOS ucmpr 5.10上运行)Generic_144488-06 sun4us sparc FJSV,GPUZC-M – Nick

2

http://linux.about.com/od/commands/l/blcmdl1_sftp.htm表明您可以使用rmdir

看到https://superuser.com/questions/595401/why-is-sftp-rmdir-not-working

直接引自Chris答案:

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 
+1

我试过了,它似乎只对空文件夹有效 – cic

+0

@cic更新回答 – Stuart

+0

但请注意,如果您在'foo'目录中的目录中有文件/目录,则更新的答案不起作用(即,这不是一个通用的解决方案)。 – cic