source 命令

source 命令  


source 命令 (从 C Shell 而来) 是 bash shell 的内置命令。
点命令(就是一个点符号.,从 Bourne Shell 而来) 是 source 的另一名称。


这两个命令都以一个脚本文件名为参数,该脚本将作为当前 shell 的环境执行,即不会启动一个新的子进程。所有在脚本中设置的变量将成为当前 Shell 的一部分,同样的,当前脚本中设置的变量也将作为脚本的环境。


source (或.) 命令通常用于重新执行刚修改的初始化文件,如 .bash_profile 和 .profile 等等。例如,如果在登录后对 .bash_profile 中的 EDITER 和 TERM 变量做了修改,则可以用 source 命令重新执行 .bash_profile 中的命令而不用注销并重新登录。像 .bash_profile 或其它类似的 Shell 脚本这样,文件无需可执行权限即可用 source 或点命令执行。
  
source 命令的一个妙用
  在编译核心时,常常要反复输入一长串命令,如
  make mrproper
  make menucon**
  make dep
  make clean
  make bzImage
  .......
  这些命令既长,又繁琐。而且有时候容易输错,浪费你的时间和精力。如果把这些命令做成一个文件,让它自动按顺序执行,对于需要多次反复编译核心的用户来说,会很方便。用 source 命令可以办到这一点。它的作用就是把一个文件的内容当成是 shell 来执行。
例如,先在 /usr/src/linux-2.4.20 目录下建立一个文件,取名为 make_command:
  在其中输入如下内容:
  make mrproper &&
  make menucon** &&
  make dep &&
  make clean &&
  make bzImage &&
  make modules &&
  make modules_install &&
  cp arch/i386/boot/bzImge /boot/vmlinuz_new &&
  cp System.map /boot &&
  vi /etc/lilo.conf &&
  lilo -v
  文件建立好之后,以后每次编译核心,只需要在 /usr/src/linux-2.4.20 下输入
  source make_command
  就行了。这个文件也完全可以做成脚本,只需稍加改动即可。这里主要是让大家理解 source 的用法。如果你用的不是 lilo 来引导系统,可以把最后两句话去掉。配置你自己的引导程序来引导新内核。
  shell 编程中的命令有时和 C 语言是一样的。&& 表示与,|| 表示或。把两个命令用 &&  接起来,如 make mrproper && make menucon** ,表示要第一个命令执行成功才能执行第二个命令。对执行顺序有要求的命令能保证一旦有错误发生,下面的命令不会盲目地继续执行。

你可能感兴趣的:(linux,linux,linux)