怎么添加网站权重,南宁营销型网站,丹棱网站建设,口碑好的网站开发公司电话在参考了Windows系统下pycharm运行.sh文件#xff0c;执行shell命令_shell在pycharm-CSDN博客
和深度学习#xff1a;PyCharm中运行Bash脚本_pycharm bash-CSDN博客
配置了右键执行.sh文件之后#xff0c;发现在Windows的PyCharm中直接右键运行sh文件#xff0c;存在如下… 在参考了Windows系统下pycharm运行.sh文件执行shell命令_shell在pycharm-CSDN博客
和深度学习PyCharm中运行Bash脚本_pycharm bash-CSDN博客
配置了右键执行.sh文件之后发现在Windows的PyCharm中直接右键运行sh文件存在如下问题
1. 有些命令在Linux中能正常运行Windows中却不能例如xargs、source、等
2. 即使配置成sh.exe也只能通过在Terminal中输入脚本路径来运行它无法做到在左侧文件导航目录那里点右键直接运行 最终我把所有.sh脚本全部全部改成了.py文件然后使用subprocess.run来运行shell命令。
例如
原文件 -- scripts/format.sh
#!/bin/sh -e
set -x[ -f pyproject.toml ] || ([ -f ../pyproject.toml ] cd ..)SKIP_MYPY1 pdm run fast lint
修改后 -- scripts/format.py
#!/usr/bin/env python
import os
import shlex
import subprocess
import sys
from pathlib import Pathwork_dir Path(__file__).parent.resolve().parent
if Path.cwd() ! work_dir:os.chdir(str(work_dir))cmd pdm run fast lint
r subprocess.run(shlex.split(cmd), envdict(os.environ, SKIP_MYPY1))
sys.exit(None if r.returncode 0 else 1)
修改之后就可以直接右键运行了如下图 更多示例可以通过如下方式查看
git clone gitgithub.com:waketzheng/fast-dev-cli.git
cd fast-dev-cli
git diff v0.10.0 v0.10.1 scripts/
注如果要执行的shell命令是以python开头的如python -m fast_dev_cli lint若系统中有多个版本的python解释器最好把其中的python改成Path(sys.executable)如
#!/usr/bin/env python
import shlex
import subprocess
import sys
from pathlib import Pathcmd python -m fast_dev_cli lint
command shlex.split(cmd)
r subprocess.run([Path(sys.executable), *command[1:]])
sys.exit(None if r.returncode 0 else 1)