【已解决】运行Python文件时报错/usr/bin/env: “python3\r”: 没有那个文件或目录 failed to start local process解决方法
在Windows下对某个Python文件进行修改后,放到Ubuntu环境下运行时报错/usr/bin/env: “python3\r”: 没有那个文件或目录 failed to start local process,可以使用dos2unix工具来检查并修复换行符解决该问题
在Windows下对某个Python文件进行修改后,放到Ubuntu环境下运行时报错/usr/bin/env: “python3\r”: 没有那个文件或目录 failed to start local process,如下所示
/usr/bin/env: “python3\r”: 没有那个文件或目录 failed to start local process:
/home/gly/catkin_ws/src/multi-robot-rrt-exploration-noetic-main-waffle_pi/rrt_exploration/scripts/simulate_rviz_clicks.py __name:=simulate_rviz_clicks __log:=/home/gly/.ros/log/39f68a8c-0d6e-11f0-a654-135ca065efc1/simulate_rviz_clicks-1.log
local launch of rrt_exploration/simulate_rviz_clicks.py failed
[simulate_rviz_clicks-1] process has died [pid -1, exit code 127, cmd
/home/gly/catkin_ws/src/multi-robot-rrt-exploration-noetic-main-waffle_pi/rrt_exploration/scripts/simulate_rviz_clicks.py __name:=simulate_rviz_clicks __log:=/home/gly/.ros/log/39f68a8c-0d6e-11f0-a654-135ca065efc1/simulate_rviz_clicks-1.log].
log file:
/home/gly/.ros/log/39f68a8c-0d6e-11f0-a654-135ca065efc1/simulate_rviz_clicks-1*.log

该报错说明 Python 脚本文件 simulate_rviz_clicks.py 中可能存在 Windows 风格的换行符(\r\n),而 Linux 系统需要使用 Unix 风格的换行符(\n)。这个问题通常是因为文件在 Windows 环境中创建或编辑后直接被传输到 Linux 系统。
所以,可以使用dos2unix工具来检查并修复换行符,如果之前没有安装过该工具,可以使用如下指令安装
sudo apt install dos2unix
然后直接使用dos2unix 后面跟要检查和修复的文件路径及文件名即可,如下面的示例所示
dos2unix /home/gly/catkin_ws/src/multi-robot-rrt-exploration-noetic-main-waffle_pi/rrt_exploration/scripts/simulate_rviz_clicks.py
转换完成后,就可以正常运行了,该方法亲测简单有效,推荐使用

其他解决方法:
如果没有安装 dos2unix 工具,也可以使用 sed 命令来移除文件中的 Windows 换行符:
sed -i 's/\r//' /home/gly/catkin_ws/src/multi-robot-rrt-exploration-noetic-main-waffle_pi/rrt_exploration/scripts/simulate_rviz_clicks.py
更多推荐


所有评论(0)