今天在安装windows下面的hadoop时碰到如下这种情况,发现在cygwin中 ls who等命令不能识别。环境变量已经设置过了,但是还是不能运行。登陆前是可以的。
可以发现是在ssh 登陆以后造成的。难道登陆后环境变量变了吗?所以打印出环境变量如下。
看来PATH确实变化了。那么是怎么变化的,那个地方修改了这个PATH的值?
终于我想起来了,是在\cygwin\etc\profile中的最后两行设置过如下值:
将\cygwin\etc\profile中197行 改为 #export PATH=/cygdrive/d/Install_Soft_Program/Java/jdk6/bin。
关闭窗口,重新运行。即可,无错误。当登陆后,如果\cygwin\etc\profile 中没有环境变量的设置,则默认采用在windows下的环境变量。如下图所示: