使用Python删除目录?
我使用如下子流程获取目录的输出:-使用Python删除目录?,python,Python,我使用如下子流程获取目录的输出:- directory_content = subprocess.getoutput("ssh -i /key.pem ubuntu@IP ls -l --time-style=long-iso /opt/orientdb/databases" | awk -F' ' '{print $6 $8}'") 我将输出转换为元组列表,这样我就可以得到目录和创建目录的日期 [('2019-04-25', 'database1'), ('20
directory_content = subprocess.getoutput("ssh -i /key.pem ubuntu@IP ls -l --time-style=long-iso /opt/orientdb/databases" | awk -F' ' '{print $6 $8}'")
我将输出转换为元组列表,这样我就可以得到目录和创建目录的日期
[('2019-04-25', 'database1'), ('2019-04-26', 'database2') .......]
我在列表上循环,得到相应的目录
for date,db in directory_content:
if (date == '2019-04-25'):
os.remove(db)
但我收到了错误信息:-
os.remove(db)
FileNotFoundError: [Errno 2] No such file or directory
我可以使用一些关于如何删除目录的帮助。多谢各位
FileNotFoundError:[Errno 2]没有这样的文件或目录
for date,db in directory_content:
if (date == '2019-04-25'):
os.remove(db)
这并不是说你不能删除文件。也就是说没有文件。电脑肯定在告诉你那件事的真相
我看到两个问题
os.remove
在本地执行。那可能是一个。。。问题/opt/orientdb/databases
,但没有证据表明进程执行时是当前工作目录对于Python中任何“不可能”的文件未找到错误,一个好的策略是将有问题的代码包装在try/catch块中,当捕获到异常时,打印参数名称和当前工作目录。几乎总是,当你把这两条信息串在一起时,你会用响亮的“duh!”表示同意计算机的意见。。仔细检查文件名拼写和路径,检查python文件是否与database1、database2等在同一目录中执行。。。。。还有,是否缺少任何文件扩展名?您应该(1)指向文件所在的位置或(2)。@something无论什么只是为了确认,您正在VM中运行python脚本,而不是在本地运行?@something无论python文件在本地运行,它将无法删除VM中的“database1”。。。。您需要在VM中运行scipt,或者在vpn中运行带有python的ssh。