You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Python脚本无法在当前目录运行,需移至桌面执行的问题排查

解决Python脚本仅能在桌面运行的问题

嘿,这个情况我之前也碰到过类似的,大概率和目录权限或者脚本的运行方式有关,咱们一步步来排查解决:

1. 检查原目录的权限

首先得确认你的用户对/dir/dir/Python/Project/目录和script.py脚本有足够的访问权限:

  • 打开终端,切换到脚本所在目录:
    cd /dir/dir/Python/Project/
    
  • 查看目录和脚本的权限详情:
    ls -ld . script.py
    
    输出里如果当前用户(看权限位的第一个三位,比如-rw-r--r--的前三位)没有读(r)和执行(x)权限,就需要手动添加:
    # 给脚本添加当前用户的读和执行权限
    chmod u+r+x script.py
    # 给目录添加当前用户的访问权限
    chmod u+x /dir/dir/Python/Project/
    

2. 确认脚本的运行方式

如果你是通过双击图标运行脚本,很多桌面环境的默认工作目录可能不是脚本所在的目录,而getpass模块需要和终端交互,这种情况下非桌面目录的脚本可能无法正确唤起终端会话。

建议改用终端运行:

  • 打开终端,切换到脚本所在目录(同上)
  • 直接执行脚本:
    python script.py
    
    这样脚本会在当前目录的上下文里运行,getpass也能正常获取输入。

3. 排除路径特殊字符问题

虽然你给出的路径看起来很规范,但如果实际路径包含空格、非ASCII字符或者特殊符号(比如&*),也可能导致系统无法正确识别脚本路径。如果是这种情况,建议把目录名改成纯英文无特殊字符的格式。

如果按照上面的步骤操作后还是有问题,不妨把终端运行时的错误信息贴出来,这样能更精准地定位问题~

内容的提问来源于stack exchange,提问作者just1han85

火山引擎 最新活动