Linux编写入门
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一,制作入门程序
vimymenu
#! /bin/bash
clear
echo“”
echo“The telephone book”
echo“”
echo“1. Display a telephone number”
echo“2. Add a new telephone number”
echo“Q Quit”
echo“Enter your selection”
过程:
首先,程序中第一个命令#! /bin/bash用来启动bash shell脚本文件.
其次,用保留字clear来告诉计算机,让它清除屏幕上已有的任何文本
然后,用保留字echo来显示文本行和空白行
最后,保存:wq
运行:
授权,更改文件类型
chmod 711 mymenu
这个命令使任何人都可以运行这个程序,但只有编程者才可以看到文件本身mymenu运行,如果这样有问题,试试运行./mymenu
二,与用户交互(变量的声明)
vi communication
#! /bin/bash
echo“”
echo“Enter your First Name”
readFirstName
echo“Enter your Age”
read Age
echo“$FirstName,$Age isn’t very old!”
读取键盘输入的字符和数字,然后显示出来
三,将数据存入一个新文件中
#! /bin/bash
clear
echo“”
echo“Enter your First Name”
readFirstName
echo“Enter your Last Name”
readLastName
echo“$FirstName $LastName”>storeData.dat
使用”>”向一个文件中存信息,会生成一个文件,如果同名,则覆盖,原有信息丢失而使用”>>”双大于号是向一个文件的末尾添加,这样避免了覆盖问题(推荐使用) 使用”<”,使计算机从文件中获取信息
四,显示文件
#! /bin/bash
clear
echo“stored data”
echo ””
cat storeData.dat
计算机从哪里获取数据?键盘
计算机在哪里显示信息?屏幕
计算机错误信息送去何处?重定向到一个文件
五,运算符
let a=30
let b=10
let sum=”$a + $b”
注意,等号(=)两边没有空格,而加号(+)两边有空格,且对所有的运算符而言,两边都要求有空格
运算符“+””-””*””/”“%”“-”运算符取负数
逻辑运算符! && ||
比较运算符–eq等于
-ne 不等于
-gt大于
-ge大于或等于
-h 小于
-le 小于或等于
Eg: let Salary=3000
letNewSalary=2000
test $Salary –eq $NewSalary
echo“$?”
六.条件检测
1.1单一变量
Eg: if [$HaveMoney–eq 1]
1.2 一个表达式
Eg: if [$Salary –gt 3000]
其他条件一般通过比较运算符,并且都是对整数和字符串操作的
2.介绍条件判断语句(if ifelse )
2.1 if 语句
If[Condition]
Then
Instruction
Fi
一般来说condition必须为真或假,且永远如此
2.2 if else
If [Condition]
Then instruction1
Else instruction2
Fi
2.3 if elif
如果条件为假时,程序将无条件地执行第二条指令,有时我们并不希望这样.我们需要在执行第二条指令前进行判断
If[condition]
Then
Instruction1
Elif[condition2]
Then
Instruction2
Fi
在多重if elif结构中,所有的条件都可以是假的.因此,程序可以不执行
If elif语句中的任何指令
保证Linux至少执行一组指令
If[Condition1]
Then
Instruction1
Elif[condition2]
Then
Instruction2
Elif[condition3]
Instruction3
Elif
Instruction4
Fi
2.4 case
Case的功能;把保留字case右边的值和闭括号左边的值进行比较Case veriableName in
value1)
instruction
;;
Value2)
Instruction
;;
Esac
注意程序要匹配的值必须包含一个或多个字符
可以用一个变量或值作为程序要匹配的值
一个变量或值的右边必须以闭括号”)”结尾
可以用保留字(*)来为没有考虑到的条件留下默认情况Eg:
#! /bin/bash
Clear
Echo “”
Echo “The telephone book”
Echo “”
Echo “1.Display a telephone number”
Echo “”
Echo “2.Add a telephone number”
Echo “Q quit”
Echo “Choose the selection what you want to do”
Case $selection in
“1”)
Echo “You want to display the telephone number”
;;
“2”)
Echo “You want to add a telephone number”
;;
“Q”)
Exit 0