首页 新闻 搜索 专区 学院

[python]如何用subprocess.call执行Linux命令?

0
悬赏园豆:20 [已解决问题] 解决于 2019-03-20 14:42

把文件1 1.txt和1 2.txt合并成文件1 3.txt(文件名中有空格)
在Linux环境下这个命令可以正常运行
cat './TEMP/1 1.txt' './TEMP/1 2.txt' > './TEMP/1 3.txt'

想要通过python来执行cat命令,于是写了下面的代码,因为文件名中有空格,所以用●来分割命令,但是“>”也被分割了,请问如何通过subprocess.call来执行上述命令?

import subprocess

cmdU = 'cat●"./TEMP/1 1.txt"●"./TEMP/1 2.txt"●>●"./TEMP/1 3.txt"'
subprocess.call(cmdU.split('●'))
芽衣的主页 芽衣 | 菜鸟二级 | 园豆:448
提问于:2019-03-20 12:39
< >
分享
最佳答案
0

1 1.txt
1 2.txt
1 3.txt
是啥意思?文件名就是 1 1.txt ?

收获园豆:20
道法自然、 | 初学一级 |园豆:46 | 2019-03-20 14:37

是的,谢谢你的关注,我已经解决问题了。
不用subprocess.call,而用os.system来合并文件比较直观且方便。

import os

cmdU = "cat './TEMP/1 1.txt' './TEMP/1 2.txt' > './TEMP/1 3.txt'"
os.system(cmdU)
芽衣 | 园豆:448 (菜鸟二级) | 2019-03-20 14:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册