shell入门
一、创建脚本
#! 字符,告诉系统同一行中紧跟在它后面的那个参数是用例执行本文件的程序
二、把脚本设置为可执行 ls -l
1.ls -l 或者 ll 命令来查看文件的访问权限【注意:其中 ll 命令 只可以在Linux中使用】
2.访问权限9位数组成
前3位数:文件所有者该文件的访问权限
中间3位数:同组内其他用户对该文件的访问权限
后三位:其他组的用户对该文件的访问去权限
3.r:读取
w:写入
x:执行
4.授权 chmod [options] filename
4表示读取权限,2表示写入权限,1表示执行权限
u表示文件的所有者,g表示 所有者所属的组,o表示其他组的用户。
操作符加号“+”表示授予权限,减 号“-”表示收回权限
例子:
chmod u+x ex1-2.sh
chmod 744 ex1-2.sh
7是由4、2和1这3个数字相加而得,4表示读取权限
三、Shell脚本的参数
示例:
四、shell脚本的基本元素
shell程序应该拥有的基本元素
1.第2行的 #/bin/bash
2.注释:说明某些代码的功能
3.可执行语句:实现程序的功能
示例:
#-----------------------------/chapter1/ex1-3.sh------------------
#! /bin/bash
# 输出字符串
echo "hello,liu"
以命令形式执行sh文件
五、指定命令解读器
1.例子:执行php语言
02 # 指定解释器
03 #! /usr/local/php5/bin/php
04
05 <?php
06 // 输出 Hello world! 字符串
07 print "Hello world!";
08 ?>
解析:
第3行指定解释当前文件的解释器的绝对路径,
第5行是PHP代码的开始
标识符,第7行使用print语句输出字符串“Hello world!”,
第8行是PHP代码的结束标识符。
2.指定more命令作为脚本文件的解释器,如more或者cat来显示当前程序的代码,
例子:
01 #-----------------------------/chapter1/ex1-7.sh------------------
02 # 指定解释器
03 #! /bin/more
04
05 # 输出语句
06 echo "Hello world!"
六、shell脚本的注释
1.单行注释 #
2.多行注释
:<<BLOCK
....注释内容
BLOCK
例子:
01 #-----------------------------/chapter1/ex1-8.sh------------------
02 #! /bin/sh
03
04 :<<BLOCK
05 本脚本的作用是输出一行字符串
06 作者:chunxiao
07 BLOCK
08 echo "Hello world!"
七、如何执行shell
授予用户执行该脚本文件的权限,使得该程序能够直接执行。
通过调用Shell脚本解释器来执行。
通过source命令来执行
[root@linux chapter1]# source ex1-5.sh
Hello, Bash Shell!
[root@linux chapter1]# /bin/bash ex1-5.sh
Hello, Bash Shell!
八、shell程序的退出状态
1.不同情况下程序的退出状态
01 #-----------------------------/chapter1/ex1-9.sh------------------
02 #!/bin/sh
03
04 echo "hello world"
05 # 退出状态为 0, 因为命令执行成功
06 echo $?
07 # 无效命令
08 abc
09 # 非零的退出状态 , 因为命令执行失败
10 echo $?
11 echo12 # 返回 120 退出状态给 shell
13 exit 120
输出