Shell脚本语言
Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有:
bash:是Linux标准默认的shell。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。 sh: 由Steve Bourne开发,是Bourne Shell的缩写,sh 是Unix 标准默认的shell。 另外还有:ash、 csh、 ksh等。 常见的编程语言分为两类:一个是编译型语言,如:c/c++/java等,它们远行前全部一起要经过编译器的编译。另一个解释型语言,执行时,需要使用解释器一行一行地转换为代码,如:awk,perl,python与shell等。 Shell 经过了POSIX的标准化,所以它是可以在不同的linux系统上进行移植。 关于注释的问题: 在shell中使用#进行注释,注意,sh里面没有多行注释,只能每一行加一个#号; 第一个shell脚本程序: 上面中的 #! 是一种约定标记,它可以告诉系统这个脚本需要什么样的解释器来执行;echo "Hello,world!" 变量: country="China" 2,首个字符必须为字母(a-z,A-Z)。 3,中间不能有空格,可以使用下划线(_)。 4,不能使用标点符号。 5,不能使用bash里的关键字(可用help命令查看保留关键字)。 使用变量: 只需要在一个定义过的变量前面加上美元符号 $ 就可以了,另外,对于变量的{} 是可以选择的,它的目的为帮助解释器识别变量的边界. 复制代码 echo $country country="China" readonly country="China" unset variable_name 特殊变量: image $ 和 [email?protected] 的区别为: $ 和 [email?protected] 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。但是当它们被双引号(" ")包含时,"$*" 会将所有的参数作为一个整体,以"$1 $2 … $n"的形式输出所有参数;"[email?protected]" 会将各个参数分开,以"$1" "$2" … "$n" 的形式输出所有参数。 $? 可以获取上一个命令的退出状态。所谓退出状态,就是上一个命令执行后的返回结果。退出状态是一个数字,一般情况下,大部分命令执行成功会返回 0,失败返回 1。 Shell中的替换 在echo中可以用于的转义符有: image 使用 echo 命令的 –E 选项禁止转义,默认也是不转义的; 使用 –n 选项可以禁止插入换行符; 使用 echo 命令的 –e 选项可以对转义字符进行替换。 另外,注意,经过我的实验,得到: echo "" #得到 echo "" #得到 它的意思就是说我们把一个命令的输出赋值给一个变量,方法为把命令用反引号(在Esc下方)引起来. 比如: directory= (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |