admin 管理员组文章数量: 1184232
2024年3月19日发(作者:数据库数据恢复哪家好)
为什么要进行
shell
编程
Linux
系统中虽然有各种各样的图形界面工具,但
shell
仍然是一个非常灵活的工具。
Shell
不仅集合了大量命令,还是一门非常棒的编程语言。借助
shell
,大量任务能实现自
动化;
shell
特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重
要的任务。
下面,让我们一起来看看
shell
是如何工作的:
建立一个脚本
Linux
中有许多种不同的
shell
,通常我们使用
bash (bourne again shell)
进行
shell
编程
因为
bash
不仅免费(自由)且易于使用。本文提供的脚本都用
bash
(当然大多数情况下,
这些脚本同样可以在
bash
的前辈,
bourne shell
中运行)执行。
kedit
、
emacs
、
vi
如同其他语言一样,我们可以使用任意一种文字编辑器,比如
nedit
、
等来编写
shell
脚本,它必须以如下行开始(必须放在文件的第一行):
代码
:
#!/bin/bash
符号
#!
用来告诉系统执行该脚本的程序,本例使用
/bin/sh
。编辑完了,如果要执行该
脚本,还必须使其可执行:
代码
:
chmod +x filename
这样输入
./filename
便可执行该脚本。
注释
shell
脚本中以
#
开始的行表示注释,直到一行的结束。我们真诚的建议你在脚本中使
用注释,这样即便在相当长时间内没有使用该脚本,你也能在短时间内明白该脚本的作
用和工作原理;此外还有很重要的原因——有了注释,更利于和别人分享你的脚本。
变量
shell
编程中,所有变量都由字符串组成,并且 在其它编程语言中,你必须使用变量。
不需要声明。要给一个变量赋值,你可以这么写:
代码
:
变量名
=
值
在变量名之前加一个
$
,就可以取出变量值:
代码
:
#!/bin/sh
#
对变量赋值:
a="hello world"
#
打印变量
a
的值:
echo "A is:" $a
挑个自己喜欢的编辑器,输入以上内容,并保存为文件
first
,然后执行
chmod +x
first
使其可执行,最后输入
./first
执行该脚本。其输出结果如下:
引用
:
A is: hello world
有时候变量名可能会和其它文字混淆,比如:
代码
:
num=2
echo "this is the $numnd"
上述脚本并不会输出
"this is the 2nd"
,只会打印
"this is the "
;这是由于
shell
会去搜索
变量
numnd
的值,而实际上这个变量此时并没有值。可以使用花括号来告诉
shell
我们要
打印的是
num
变量:
代码
:
num=2
echo "this is the ${num}nd"
上述脚本的输出结果为:
this is the 2nd
有许多变量是系统自动设定的,在后面用到这些变量时我们再作说明。如果你需要处
理数学表达式,那么得借助诸如
expr
的程序。
除了仅在脚本内有效的普通
shell
变量外,还有环境变量,即那些由
export
关键字处
理过的变量。本文不讨论环境变量,因为一般只在登录脚本中使用环境变量。
版权声明:本文标题:Shell编程基础 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1710841424a575792.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论