LINUX期末复习---SHELL编程
2009-12-24 17:59
211 查看
一、SHELL简介
①什么是SHELL
答:一个作为用户与LINUX系统之间的操作接口程序,允许用户向操作系统输入需要执行的命令。一种高级、解释性的程序语言。
②SHELL的种类
③SHELL的执行
. *.sh
④命令别名功能
设置别名:alias
取消别名:unalias
⑤管道
1、 利用管道和wc命令,计算文件list中的行数、单词数和字符数:cat list | wc.
2、利用管道和grep命令,在上面建立的文件list中查找字符串list:cat list | grep list.
3、设置环境变量PATH的值,把当前目录加入到命令搜索路径中去:PATH=“$PATH:.”
二、SHELL程序设计语法
(说明:1、使用前部需要声明。2、默认是字符串类型。3、区分大小写。)1)变量
①赋值的方法方法一:a=9+1,a=guofeng,等号左右时不能有空格的,他们都是以字符串的形式赋值
方法二:read a ,通过键盘的输入
②变量的引用
一般用’$’,来引用,如有一个 guofeng 变量,输出它为,echo $guofeng
举例:
1、echo "Hello $LOGNAME, it's nice talking to you." 输出用户名
(说明:双引号中的 ‘$变量’ 是会被替换的,想输出‘$变量’只要加一个’/’转义一下。。。但是单引号里面的内容都是当做字符串输出。。。而到引号则是回去执行里面的命令。)
2、echo "Your present working directory is `pwd`." 输出当前的工作路径(有到引号)
3、echo "You are working on a machine called `uname -n`." 输出服务器名
4、echo The name of this script is $0. 显示命令名
5、echo The arguments are $*. 显示所有的参数行,$? 为前一个命令的返回
6、echo The first argument is $1. 显示第一个参数
7、echo The number of arguments is $#. 显示参数的个数
8、set $(date) 赋值命令行为日期
2)if语句(可用 [] 或 test 来判断)
①基本结构
if [ 条件1 ]; then
代码;
elif [ 条件2 ]; then
代码;
elif [ 条件3 ]; then
代码;
else
代码;
fi
(注意,[],必须与判断条件之间留空格。)
②字符串比较
③算数比较
-eq:==
-ne:!=
-gt:>
-ge:>=
-lt:<
-le:<=
!expression:true or false
④文件测试
3)case、for、while/until语句
1、case使用举例:read choice
case "$choice" in
N) echo "please input a new filename:"
执行语句
;;
E) echo "pleas input a filename:"
执行语句
;;
Esac
2、for使用举例:
for((i=1;i<10;i++))
do
echo $i
done
或者
for i in 1 2 3 4 5 6 7 8 9
do
echo $i
done
3、while使用举例
index=1
while [ $index -le 100 ]
do
执行语句
index=$(($index +1))
done
4)函数
定义:get_return()
{
echo -e "Press return /c"
read x
return 0
}
调用:
get_return
5)内嵌命令
1、eval: eval echo hello,输出hello,该命令将其参数连接成命令,并交由shell执行2、exec: exec . another.sh 用 . another.sh替换掉当前的SHELL
3、expr,let: 表达式赋值
expr: expr `guoefng = 1 + 1` ,guofeng的值即为2.
let: let guofeng=(1+3)*3,guofeng的值即为12,,,( i=1, (( i+=4)) )
4、echo: -n 去掉后面的换行符 , -e使用字符串的/为转移符
5、read
read -a friends //-a 按数组形式输入
echo "Say hi to ${friends[2]}."
6、trap: trap `rm –rf guofeng.c` EXIT,当你的shell程序退出时,会自动删除当前目录下的该文件
7、umask:设置用户访问文件的默认属性,umask 0666|
8、times:用户运行命令的时间 times ll
9、type:查询命令是否有效 type ls
相关文章推荐
- LINUX期末复习---内存管理
- Linux复习(三)Shell编程1
- LINUX期末复习---基本命令与操作
- Linux期末复习知识点小结(六)——线程与进程通信之管道通信概念
- LINUX期末复习---线程
- LINUX期末复习---文件处理
- LINUX期末复习---程序设计入门
- Linux期末复习重点(知识点)
- Linux期末复习知识点小结(四)——进程
- LINUX期末复习---进程与进程管理
- linux期末复习知识点小结(一)——Introduction
- linux期末复习知识点小结(二)——Linux操作系统
- Linux复习(三)Shell编程1
- linux期末复习知识点小结(三)—— Shell
- Linux期末复习知识点小结(五)——文件系统
- ARM嵌入式linux复习心得总结(2)-- 2011.10.10 Evo Yang
- 复习linux C编程(二)之 linux 常用文件操作命令
- Linux复习总结---如何查看汇编代码
- Linux——shell编程笔记
- Linux系统基础-复习