基础操作
多线程启动程序
-
.bashrc文件 -
cd ~/25RC_reset/ws_livox source install/setup.bash ros2 launch fast_lio start.launch.py & gnome-terminal -- bash -c " sleep 10 cd ~/25RC_reset/subscription_and_send source install/setup.bash ros2 run sensor_data_msgs_subscriber sensor_data_msgs_subscriber_node " -
python脚本
-
``` import os import subprocess
def run_ros2(): # 切换工作目录并执行ROS2命令 work_dir = os.path.expanduser("~/25RC_reset/easy_nav") os.chdir(work_dir)
# 后台启动nav_launch subprocess.Popen(f"bash -c 'source install/setup.bash && ros2 launch nav_bringup nav_launch.py &'", shell=True) # 新建终端执行订阅节点 term_cmd = ( "bash -c 'sleep 7 && " "/home/hurricane/25RC_reset/subscription_and_send && " "source install/setup.bash && " "ros2 run sensor_data_msgs_subscriber sensor_data_msgs_subscriber_node'" ) subprocess.Popen(["gnome-terminal", "--", "bash", "-c", term_cmd])if name == "main": # 用户输入判断 choice = input("输入1启动ROS2,输入2进入正常终端:").strip() if choice == "1": run_ros2() elif choice == "2": pass ```
移植完整的python环境
- 使用
pigar自动扫描代码 pip install pigar- 扫描项目并生成配置(生成
requirements.txt)- 进入项目代码所在的根目录
pigar generate
- 在新的位置创建新的虚拟环境
python -m venv venv(最后一个参数可以自己命名)
- 激活新环境并安装依赖
source venv/bin/activate
- 一键安装所有依赖包
pip install -r requirements.txt
- 使用
conda移植 - 创建独立环境
conda create --name my_cv_env python=3.9- 激活环境
conda activate my_cv_env- 环境移植
conda env export > environment.yml- 如果要在不同操作系统的电脑间移植(
export会将系统底层的C++编译哈希值也写入) conda env export --no-builds > environment.yml
- 如果要在不同操作系统的电脑间移植(
- 在新电脑上复刻环境
conda env create -f environment.yml(env不能变)