Python中文
首页
教程
问答
标签
搜索
登录
注册
rm rf不通过python fork execl scrip删除目录
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>嗨,我正在尝试使用python的fork和execl来创建一个新的bash进程并删除一个目录'testdir'。你知道吗</p> <p>我编写了以下代码:</p> <pre><code>import os pid = os.fork() if pid == 0: os.execl('/bin/rm', 'rm-rf', 'temptdir') # temptdir is a directory in home folder. </code></pre> <p>我希望它将创建一个新的bash进程,并在bash中运行以下命令:</p> <pre><code>rm -rf temptdir </code></pre> <p>删除目录,但它显示:</p> <pre><code>rm-rf: temptdir: is a directory </code></pre> <p><strong>知道为什么不删除目录吗?又该如何修复呢?</strong></p> <p>最后,在python文档中,python execl命令的fortmat为:</p> <pre><code>execl( path, arg0, arg1, ...) </code></pre> <p>但如果我跑了:</p> <pre><code>os.execl('/bin/echo','hello') </code></pre> <p>它不打印任何东西。<strong>为什么我必须添加一个额外的'echo'参数,例如:</p> <pre><code>os.execl('/bin/echo','echo','hello') </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你需要分别传递参数。因为<code>-r</code>和<code>f</code>是<code>rm</code>的独立参数。你知道吗</p> <pre><code>import os pid = os.fork() if pid == 0: os.execl('/bin/rm', 'rm', '-rf', 'temptdir') # temptdir is a directory in home folder. </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
在python3中使用Scipy pearsonr函数
10 回答
在Python3中使用scipy对多个lorentzian进行数据拟合
8 回答
在Python3中使用Script=argv
8 回答
在python3中使用selenium webdriver进行未解析的回溯
4 回答
在python3中使用selenium和phantomjs的网页截图之前如何等待?
9 回答
在Python3中使用Selenium和Requests模块从网页获取文件
9 回答
在python3中使用SIGINT终止函数
2 回答
在Python3中使用SIGTERM时,允许进程完成而不是中断
5 回答
在python3中使用smtplib发送XML内容
5 回答
在python3中使用socket库(RFCOMM模式)重新连接蓝牙设备?
1 回答
在python3中使用sounddevice和numpy编写wav文件
10 回答
在python3中使用Sqlalchemy插入MySQL查找类型错误的原因
7 回答
在python3中使用sqlite、pandas和sqlalchemy很难让rollback工作
4 回答
在python3中使用SQLite的FTS3/4
7 回答
在Python3中使用struct.calcsize()和len()有区别吗?
4 回答
在python3中使用substring函数时发生TypeError
1 回答
在Python3中使用Tkinter entry小部件写入串行设备
1 回答
在python3中使用tkinter时,如何在每次按下函数时获得运行该函数的按钮?
8 回答
在python3中使用tkinter的子帧
9 回答
在Python3中使用tryexcept块时,如何避免使用未初始化的变量?
9 回答