企业软件热点文章 | |
Windows下自动切换IP小脚本 | linux中线程同步和互斥的区别 |
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 menuconfig
make dep
make clean
make bzImage
.......
这些命令既长,又繁琐。而且有时候容易输错,浪费你的时间和精力。如果把这些命令做成一个文件,让它自动按顺序执行,对于需要多次反复编译核心的用户来说,会很方便。用 source 命令可以办到这一点。它的作用就是把一个文件的内容当成是 shell 来执行。先在 /usr/src/linux-2.4.20 目录下建立一个文件,取名为 make_command:
在其中输入如下内容:
make mrproper &&
make menuconfig &&
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 menuconfig ,表示要第一个命令执行成功才能执行第二个命令。对执行顺序有要求的命令能保证一旦有错误发生,下面的命令不会盲目地继续执行。
本文来源:中国IT实验室 作者:佚名