我向群集提交了一些计算并发现,如果我在其qsub
中运行.
的shell脚本(请注意点后面的空格)而不是{{1}一些变量的变化范围,我没有库访问的问题,就像我对./
一样。
他们讨论./
和sh
方法,但不要触及. ./
.
与.
相同吗?
答案 0 :(得分:3)
. cmd
VS
./cmd
是昼夜不同。
第一个,更像是“include”,它在当前正在执行的shell的上下文中执行cmd。
第二个是路径操作。 ./cmd
类似于/usr/local/bin/cmd
。 ./
是路径说明符。
在这种情况下,它表示您在当前目录中运行cmd
,而不是搜索cmd
的PATH env变量。
当cmd
被执行时,它被分叉并执行到它自己的进程,与当前进程无关。与第一个例子完全不同的结果。
答案 1 :(得分:1)
。用于source脚本。 该脚本将在当前shell中运行,之后设置的任何变量都将可用。
./是一种说出“当前目录”的方式,它只是一个路径引用。