第十章:sh编程
知识点归纳总结:
本章讨论了sh编程,阐释了sh脚本和不同版本的sh。比较了sh脚本与C程序,并指出了解释语言和编译语言的区别;说明了如何编写sh脚本,包括sh变量,sh语句,sh内置命令,常规系统命令和命令替换。解释了sh控制语句,包括测试条件,for循环,while循环,case语句等。并示范了用法;说明了如何编写sh函数以及使用参数调用sh函数;举例说明了sh脚本的广泛应用,包括linux系统的安装,初始化和管理。
其中包含了sh内置命令和sh-linux命令
sh内置命令:
file:读取并执行文件。
break [n]:从最近的第n个嵌套循环中退出。
cd [dirname]:更换目录。
continue [n]:重启最近的第n个嵌套循环。
eval [arg...]:计算一次参数并让sh执行生成的命令。
exec [arg ...]:通过这个sh执行命令,sh将会退出。
exit [n]:使sh退出,退出状态为n。
export [var ...]:将变量导岀到随后执行的命令。
read [var...]:从stdin中读取一行并为变量赋值。
set [arg ...]:在执行环境中设置变量。
shift:将位置参数S2 $3 ...重命名为$1 S2…。
trap [arg] [n]:接收到信号n后执行参数。
umask [ddd]:将掩码设置为八进制数ddd的。
wait [pid]:等待进程pid,如果没有给出pid,则等待所有活动子进程。
sh-linux命令:
awk:数据处理程序。
cmp:比较两个文件。
comm:选择两个排序文件共有的行。
grep:匹配一系列文件的模式。
diff:找出两个文件的差异。
join:通过使用相同的键来连接记录以比较两个文件。
sed:流或行编辑命令。
sort:排序或合并文件。
tail:打印某个文件的最后n行。
-tr: 一对一字符翻译。
uniq:从文件中删除连续重复行。
问题:一门程序设计语言有哪些必备的要素和技能?
以java为例,它拥有以下的特点:
1 语言特性:对象化程度高,oop概念贯彻始终,便于设计,修改,运用各种设计模式,有gc
2 语法类似c,简洁,清晰,数据类型扩展程度高,开发效率比c/c++语言高
3 非常广泛的Framework,提供了不少支持,包括各种数据结构支持类
4 跨平台,也有界面开发能力,有很强大的分布式处理能力
5 中间件技术,可以用于web开发,结合EJB,企业级平台优秀的开发工具
实践:测试运行sh脚本
创建.sh文件并写入代码
输入代码运行
chmod +x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
实践:sh变量
代码:
#! /bin/bash
echo A
echo $A
A="this is fun "
echo $A
B=A
echo $B
B=$A
echo $B
实践:sh脚本条件语句
代码:
read who
if [ "$who" = "me" ]; then
echo "you are male"
else
echo "$who is female"
fi
实践:sh脚本for语句
代码
for FRUIT in apple orange banana cherry
do
echo $FRUIT
#print lines of apple orange banana cherry
done
for NAME in $*
do
echo $NAME
#list all command-line parameter strings
if [ -f $NAME ]; then
echo $NAME is a file
elif [ -d $NAME ]; then
echo $NAME is a DIR
fi
done
标签:脚本,...,NAME,文件,李兴昕,第十章,sh,echo,20201318
From: https://www.cnblogs.com/shady545/p/16705279.html