hysaoh 发表于 2022-9-18 20:17:15

python和shell的美妙结合

最近需要批量转换视频格式,看了看bat脚本的语法,%分号看的我头疼,个人感觉还是java和python的语法更加优美。
翻了半天教程,终于搞好了这个脚本,请品鉴。
核心方法就是cmd了,用的时候直接调用就好了。executable是你的shell的路径,这里我使用的是powershell,如果你只需要自带的shell,删掉这个参数就好了。
```
import subprocess


def cmd(command):
    global my_cwd
    r = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
                         executable="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe", cwd=my_cwd)
    r.wait()
    if r.returncode == 0 and command.split(" ") == "cd":
      my_cwd = command.split(" ")
    elif r.returncode == 1:
      print("命令错误")
    word = r.communicate().decode("gbk")
    if len(word) == 0:
      pass
    else:
      print(word.strip())


if __name__ == '__main__':
    my_cwd = "C:\\"
    while True:
      a = input("路径:" + my_cwd + "\n请输入命令:")
      if a == "stop":
            break
      cmd(a)

```
页: [1]
查看完整版本: python和shell的美妙结合