用Python写一个如果用户输入rm -rf,就删除rm -rf后面的文件夹,如果是rm就删除rm后面的文件
时间: 2024-05-16 18:12:32 浏览: 136
Node.js-rimraf-递归地删除文件类似于rm-rf
请注意,删除文件和文件夹是一个非常危险的操作,因为一旦执行,数据将无法恢复。因此,在实际操作中,必须谨慎处理和验证用户输入。
下面是一个简单的Python代码示例,可以实现您的要求:
```python
import os
command = input("请输入要执行的命令:")
if command.startswith("rm "):
file_path = command.split(" ")[1]
if os.path.isfile(file_path):
os.remove(file_path)
print(f"{file_path} 文件已被删除")
elif os.path.isdir(file_path):
os.system(f"rm -rf {file_path}")
print(f"{file_path} 文件夹已被删除")
else:
print(f"{file_path} 文件或文件夹不存在")
else:
print("无效的命令")
```
这段代码接受用户输入的命令,然后通过 `startswith()` 方法来检查命令是否以 "rm " 开头。如果是,它会通过 `split()` 方法找到命令后面的路径,并使用 `os.path` 模块检查路径是否为文件或文件夹。如果是文件,则使用 `os.remove()` 方法删除文件。如果是文件夹,则使用 `os.system()` 方法执行 `rm -rf` 命令来删除整个文件夹。如果路径无效,则输出错误信息。如果命令不是以 "rm " 开头,则输出无效命令的错误信息。
阅读全文