1.首先在 root 的权限在运行:
root@marva:/# su - scidb -c "echo $PATH"
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2.接下来我用了测试脚本:
#!/bin/bash
echo $PATH
运行脚本:
root@marva:/# su - scidb -s /tmp/scidbshell.sh
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
这两处的环境变量都不一样。
3.接下来我切换到 scidb 的用户权限下来查看 scidb 的 PATH 的值
root@marva:/# su scidb
scidb@marva:/$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/scidb/14.12/bin:/opt/scidb/14.12/share/scidb
我有个命令必须要在有后面的那个环境中才能运行成功, 不然会报没找到命令。。。
只要让环境变量和切换到 scidb 的用户下一样,命令就可以运行成功了。
有哪位前辈知道解决方法的,希望告知答案
root@marva:/# su - scidb -c "echo $PATH"
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2.接下来我用了测试脚本:
#!/bin/bash
echo $PATH
运行脚本:
root@marva:/# su - scidb -s /tmp/scidbshell.sh
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
这两处的环境变量都不一样。
3.接下来我切换到 scidb 的用户权限下来查看 scidb 的 PATH 的值
root@marva:/# su scidb
scidb@marva:/$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/scidb/14.12/bin:/opt/scidb/14.12/share/scidb
我有个命令必须要在有后面的那个环境中才能运行成功, 不然会报没找到命令。。。
只要让环境变量和切换到 scidb 的用户下一样,命令就可以运行成功了。
有哪位前辈知道解决方法的,希望告知答案