python - 在 Windows 上将路径从 Bash 传递到 Python 会自动尝试将其转换为绝对路径 - 有没有办法禁止这样做?
问题描述
我正在尝试将 Python 脚本的路径作为参数传递给sys.argv[x]
. 然而,从 Bash 到 Python 的所述路径的传递似乎将其转换为不同的路径。这是为什么?代码:
#!/bin/sh
path='/var/log'
echo "$path"
python script.py "$path"
#!/usr/bin/env python3
import sys
logPath = sys.argv[1]
print(logPath)
输出:
/var/log/
C:/Program Files/Git/var/log/
解决方案
好的,我做了一些进一步的调查,发现这是mingw
试图变得聪明的一个已知“特征”。为了修复它,我在export
我的 bash 脚本中添加了以下内容:
export MSYS_NO_PATHCONV=1
您可以在 git 上阅读更多相关信息:
推荐阅读
- pandas - Pandas 新列是最后 N 列的总和
- webpack - 由于意外字符,在 nextJs 中为 antd 使用 less 的 Webpack 设置失败
- jupyter-notebook - 在绘制叶图时从数组中选择颜色
- python - 查找 2 个 tensorflow 视图训练模型之间的差异(pb 文件生成中可能存在的问题)
- javascript - 在函数中返回多个值
- python - python列表理解 - 使用任何
- postgresql - 在默认的 postgres:12 docker 镜像中编辑 pg_hba.conf
- c# - 在 Visual Studio 中计时事件的最佳方式是什么?
- swift - Swift 中有双打的占位符吗?
- html - 在旁边显示一个 $ 符号在同一条线上