问题遇到的现象和发生背景
1、根据提示,显示是“source未找到命令,而不是 source 未找到命令,所以有可能是你用echo命令往.bashrc 的文件内写命令时吧引号给带进去了。
2、解决方案:
a.使用VIM命令打开.bashrc 文件
vim ~/.bashrc
b.shift + g 跳转到最后一行 找到以下内容
source ~/ros_workspace/devel/setup.bash
c.删除该行多余的冒号并保存退出
:wq
这个原因有很多,看你有没有改过什么bashrc文件,如果没有的话,可以试试这个
“source”:未找到命令,可以
用su直接切换到root,再执行
source /etc/profile
你是把souce写入到了.bashrc里了,当你每次打开终端的时候,它都会运行一下系统的环境变量和用户的环境变量,而你修改了自己的环境变量,即修改了.bashrc,你具体方法是,首先打开终端,输入下面的命令:
vim ~/.bashrc
找到这样的内容:
source ~/ros_workspace/devel/setup.bash
将其删除即可,因为你的~/ros_workspace/devel/setup.bash路径下并没有setup.bash这个文件。
如有帮助,请采纳,多谢!
“source”:未找到命令
这个问题一般是.bashrc文件中最后几行中的source语句有错误导致的
在终端输入 cat ~/.bashrc,看看输出什么内容
~/.bashrc里面的可能是带了双引号"source ~/ros_workspace/devel/setup.bash"
先把"source ~/ros_workspace/devel/setup.bash" 里面的双引号 从 ~/.bashrc 中去掉再执行 source ~/.bashrc
1.这个账户的家目录下的.bashrc文件,找到带source命令的这行,肯定有一行source前面多了个双引号
2.还有可能是/etc/profile,家目录下的.bash_profile文件,都有可能出现这个问题,排查到这里,应就解决问题了,除非你的PATH里面添加了其他初始化文件
3.以上提到的三个文件(或者自己添加的初始化文件,如果没有就略过),切换到root用户,source一下,正常来说,会有一个报错,定位到报错的那行,删掉引号就可以了
ubuntu系统 source: not found解决方法
1.Ubuntu的shell默认是Dash Shell
$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 1月 22 2019 /bin/sh -> dash
2.root权限下修改shell为Bash Shell
sudo dpkg-reconfigure dash
[sudo] password for root:
Removing 'diversion of /bin/sh to /bin/sh.distrib by dash'
Adding 'diversion of /bin/sh to /bin/sh.distrib by bash'
Removing 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash'
Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by bash'
ls -l /bin/sh
lrwxrwxrwx 1 root root 4 3月 9 15:33 /bin/sh -> bash
4.此时可以正常使用source命令
source /etc/profile
sudo dpkg-reconfig bash 试试
参考网上一些解决方案,如执行
dpkg-reconfigure dashdpkg-reconfigure dash
source 的目标文件有语法错误!