1.shell运行程序的3种方法:
(1)使文件具有可执行权限,直接运行程序。
(2)直接调用命令解释器执行程序。
(3)施工source执行程序。
2.chmod命令可以修改文件的权限,+x参数使得程序具有可以执行权限。命令:chmod +x test.sh
3.shell 命令的种类:
(1)内建命令就是shell程序本身包含的命令。这些命令集成在shell解释器中,比如cd命令,I/O命令等。
(2)shell函数是一系列程序代码,以shell语言写成,可以像其他命令一样被使引用。
(3)外部命令是独立于shell的可执行程序。比如find,grep。命令行shell在执行外部命令时,会创建一个当前shell的复制进程来执行。在执行的过程中,存在着进行的创建和消亡。
4.当需要在程序中修改当前shell本身的环境变量时,使用source命令。比如如下程序echo.sh
#! /bin/sh
cd /tmp
echo "hello world"
5.变量:shell变量的名称以一个字母或者是下划线符号开始,没有长度限制。
(1)shell变量没有类型的区分,一切都是字符串,并且和变量名一样。变量赋值的方式为:变量名称=值,注意左右不能有空格。
(2)当需要使用变量的值的时候,在名称前面加上$符号即可。单引号将变量括起来变量的替换就被禁止,变量名只会被解释成字面的意思,而双引号会被替换
var=123
echo '$var'
echo "$var"
(3)变量可以分为全局变量和局部变量,局部变量必须要用local声明,否则在代码中还是全局可见的。需要注意的是:在函数内部修改全局变量可以会引起不知道的错误。
(4)环境变量相关操作:http://blog.csdn.net/longxibendi/article/details/6125075
(5)此外,shell(这里指bash)的初始化过程是这样的:
1.bash 检查文件/etc/profile 是否存在
2. 如果存在,bash 就读取该文件,否则,跳过
3.bash 检查主目录下的文件.bash_profile 是否存在。
4. 如果存在,bash 就读取該文件,否则,跳过
5.bash 检查主目录下的.bash_login 是否存在。
6. 如果存在,bash 就读取该文件,否则,跳过
7.bash 检查主目录下的文件.profile 是否存在
8. 如果存在, bash 就读取该文件,否则,跳过。
这些步骤都执行完后,就出现提示符了, ksh 默认提示符是 $.