想写一个同时启动三个终端的脚本,因为每个终端都要持续运行,而且roslaunch出现了一些问题
首先说明一个坑,因为在TX1上没有安装什么太好的编写软件,所以我先在windows环境下,使用Notepad++进行编写,然后复制到unbuntu下运行
发现报错
xxx.sh:line 3: $'xxx\r': command not found
xxx是我文件的内容,发现每行结尾无故多了"\r"
经过查找资料发现,原因是这是由于windows和linux下的/r ^M 字符的区别导致。
Unix体系里,每行结尾只有“<换行>”,即“\n”;Windows体系里面,每行结尾是“<换行><回 车>”,即“\n\r”。一个直接结果是,Unix体系下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix下打开的话,在每行的结尾可能会多出一个^M符号。
后来我又把程序在linux下重新敲了一边,才能顺利运行。
下面贴个小程序
#!/bin/bash
source ~/catkin_ws/devel/setup.bash
gnome-terminal --window --tab -e "roscore"
sleep 2s
gnome-terminal --window --tab -e "rosrun fasterrcnn demo.py"
sleep 2s
rosrun tld run_tld -p /home/ubuntu/Desktop/para