当前位置:网站首页 > 编程语言 > 正文

py文件怎么执行 linux(py文件怎么执行)



目录

0. 前序工作

1. 连接远程虚拟环境 (配置解释器)

2. 理解.sh (shell脚本 - 以Occ为例)

补充shell脚本讲解

3. 配置运行参数 (PyCharm)

值得注意的路径问题:

小结


在远程运行虚拟环境之前,得确保已经完成以下几个前置步骤:

1. 在jupyter lab进入终端,远程配好环境,先让项目远程跑起来,先不考虑本地PyCharm

2. 将pycharm本地项目同步到(Linux)服务器上——科研实践(完成文件上的map对应同步)

  • (1)文件 → 设置

  • (2)项目 → python解释器 → 添加解释器 → SSH

  • (3)现有 → SSH服务器右侧下拉菜单 → 选择咱的端口37368 → 下一步

  • (4)内省完成 → 下一步 (2/3. 正在内省 SSH服务器) 窗口

下一步后会自动弹出“新目标: SSH”的 (3/3. 项目目录和 Python 运行时配置) 窗口

  • (5)Virtualenv 环境(不要选Conda,亲测不太行)→ 现有 → 取消勾选“自动上传到服务器”  → 选择“远程路径”文件夹

(6)中的选择解释器步骤,可以放在(5)选择“远程路径”文件夹之前操作,没问题的

  • (6)解释器:显示: <无解释器>,还得咱自己勾选一下,选中咱虚拟环境中的python,确定→创建→确定

然后需要等待20s左右,就能成功连上虚拟环境啦

可以看到之前已经初始化好了的环境,本人在PyCharm远程连接服务器前,已经成功跑起来了,这是前序工作(当然配好环境的工作量不小)

首先打开,看看当时执行train的逻辑(每个项目都会有细微差别,但知识点相同)

说明在执行“CAM-R50_img1600_128x128x10.py”文件前,需要执行Linux的bash文件,python解释器不理解Linux语法,怎么办呢?不慌,咱细看这个shell脚本文件~

  1. dirname $0:
    • 获取当前脚本文件所在的目录路径。
    • 获取当前脚本所在目录的绝对路径。
    • 命令切换到这个绝对路径下,使得后续操作在该目录中进行。
  2. : 激活名为 “OpenOccupancy” 的 Conda 环境,以便在特定的环境中执行后续命令。
  3. : 设置 Python 的模块搜索路径为当前目录(表示当前目录),这样在运行 Python 程序时可以方便地找到当前目录下的模块。
  4. : 打印第一个命令行参数的值,这里是查看传入的参数。
  5. : 检查第一个命令行参数是否为一个文件。是一个条件判断,用于判断参数所代表的路径是否指向一个常规文件。
    • 如果第一个参数是一个文件,将其赋值给变量,后续用于指定配置文件。
  • 调用目录下的脚本进行分布式训练。
  • 将前面确定的配置文件()、第二个命令行参数()以及第三个及以后的所有参数()传递给这个脚本。

执行命令: “bash run.shhttps://blog.csdn.net/weixin_/article/details/projects/configs/baselines/CAM-R50_img1600_128x128x10.py 1” 时, 对应关系如下:

  1. 对应代码中的。在代码中,首先检查这个参数所代表的路径是否是一个文件,如果是,则将其赋值给变量,后续用于指定配置文件进行分布式训练。
  2. “1” 对应代码中的。这个参数指的是用几个gpu训练,会在最后被传递给脚本进行分布式训练。

这里又嵌套了一层,咱来看看这个脚本写了什么:(在tools目录下)

 

要想在PyCharm里运行这个训练脚本(bash run.shhttps://blog.csdn.net/weixin_/article/details/projects/configs/baselines/CAM-R50_img1600_128x128x10.py 1),需要配置运行参数!

(1)在 PyCharm 顶部菜单栏中,选择 “Run”(运行)>“Edit Configurations”(编辑配置)

(2)设为“module”(不要选script)→ 输入"PyTorch 的分布式启动模块启动"的命令 → 展开后把环境变量粘贴过来

$(dirname "$0")/train.py → https://blog.csdn.net/weixin_/article/details/tools/train.py
  • 是因为train.py在OpenOccupancy/tools里,而我们要执行的“OpenOccupancy/projects/configs/baselines/CAM-R50_img1600_128x128x10.py”并不在OpenOccupancy/tools路径下
  • 而同时需要用到的train.py却在“OpenOccupancy/tools”路径下,两个文件的路径不一样
  • 因此把工作目录: “E:/code/OpenOccupancy/tools”→“E:/code/OpenOccupancy”
  • 的同时,需要改粘贴过来的配置文件路径: train.py → https://blog.csdn.net/weixin_/article/details/tools/train.py

  • 这下点击确定后重新执行,就不会再报错啦(以上的每一步,都是建立在运行后报错,找原因,改进后的实践经验总结)
  • 运行剩下的不同的训练脚本,修改的方法都大同小异
到此这篇py文件怎么执行 linux(py文件怎么执行)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • keil破解器怎么用(keil破解有什么用)2025-02-23 20:09:09
  • git基本用法(git的常用操作)2025-02-23 20:09:09
  • 小蚂蚁速购(小蚂蚁应购商城)2025-02-23 20:09:09
  • 拆包机器人可以做双抓手吗(拆包机器人可以做双抓手吗视频)2025-02-23 20:09:09
  • 淄怎么读(淄怎么读什么意思啊)2025-02-23 20:09:09
  • samba共享怎么用(如何设置samba共享)2025-02-23 20:09:09
  • 2263xt 跳线(2262en跳线)2025-02-23 20:09:09
  • git的用法(git常用操作详解)2025-02-23 20:09:09
  • max3042 中文手册(max3096中文手册)2025-02-23 20:09:09
  • 16进制解码(16进制解码最简单方法)2025-02-23 20:09:09
  • 全屏图片