摘要: 标题中的命令都可以用来执行一个文件,如脚本(.sh .pl .tcsh等)或一个配置文件(.bashrc .vimrc等)。但它们是有区别的。其中,$ . filename$ source filename是在当前的shell中运行,而$ /absolute/path/to/filename$ ./filename$ sh filename (或者bash, tcsh等)则是到一个新建的子shell中去运行。差别体现在,当你运行的文件中有变量声明时,在前一种情况,这些新变量的值会被保留在当前shell中;而在后一种情况,当你的文件被执行完后,子shell被关闭回到当前shell,那些新变量.. 阅读全文