《shell的使用》由会员分享,可在线阅读,更多相关《shell的使用(29页珍藏版)》请在金锄头文库上搜索。
1、Shell的使用,Shell的基本概念,Shell是操作系统与用户进行交互操作的界面,Shell的发展与分类,Bsh在20世纪70年代中期诞生于新泽西的AT&T贝尔实验室,具有较强的脚本编程功能,Csh在20世纪80年代早期诞生于加利福尼亚大学 ,使用C语言的语法,用户命令交互更加方便,Ksh结合了Bsh和Csh两者的功能优势,兼有Bsh的语法和Csh的交互特性,Bash是Bsh的升级替代品,吸收了Ksh中的诸多优秀特性,Bash是开源软件,RHEL4中Shell的使用,RHEL4中提供了多种Shell程序可供用户选择文件Shells中保存了Linux系统中可使用的Shell程序列表 /etc
2、/shells在某个Shell程序中可通过执行其他的Shell程序改变用户的当前Shellteacherlocalhost $ bsh用户默认Shell的设定 用户使用的登录Shell保存在passwd文件的记录中/etc/passwd,Bash的主要功能,命令行编辑功能命令和文件名补全功能命令历史功能命令别名功能提供作业控制功能具有将命令序列定义为功能键的功能灵活的Shell脚本编程,Shell变量的分类,环境变量预定义变量位置变量用户自定义变量(本地变量),环境变量,使用set命令查看环境变量 set常用环境变量 USER UID SHELL HOME PWD PATH PS1 PS2环境
3、变量配置文件/etc/bashrc /etc/profile /.bash_profile/.bashrc,位置变量,$ ./exam01 one two tree four five six,预定义变量,显示预定义变量的值,用户自定义变量,自定义变量的设置$ DAY=sunday自定义变量的查看与引用 $ echo $DAY 自定义变量的输出 $ export DAY自定义变量的清除 $ unset DAY,Bash的命令行编辑功能,命令行编辑功能,Bash的命令行补全功能,命令补全功能 使用Tab键可在命令查找路径中查找匹配的命令,并进行命令拼写的补全文件补全功能使用Tab键可对文件和目录
4、名进行补全,Bash的命令历史与命令重复,命令历史功能的使用 使用上下方向键浏览已输入命令(历史命令)历史命令的查看 $ history用户命令历史保存文件 /.bash_history命令历史的清除$ history -c,Bash的命令别名功能,命令别名的显示 $ alias命令别名的定义 $ alias grep=grep -i命令别名的取消 $ alias grep$ unalias -a系统别名定义文件RHEL4系统中为用户预定义的命令别名保存在“/etc/profile.d/”目录的配置文件中,阶段总结,Shell的发展与类型BshCshKshBash Shell变量类型 环境变量
5、、预定义变量、位置变量、用户自定义变量Bash的主要功能命令行编辑命令补全命令历史命令别名,阶段练习,查看系统中的环境变量练习使用命令补全功能进入如下目录:/etc/sysconfig/network-scripts/,管道与重定向,标准输入输出 重定向操作 管道操作,标准输入输出,标准错误输出,重定向操作,重定向操作,输出重定向实例,将命令输出重定向到文件将标准输出重定向到文件$ ls /etc/ etcdir将标准输出重定向追加到文件$ ls /etc/sysconfig/ etcdir 将错误输出重定向到文件$ nocmd 2 errfile将标准输出和错误输出重定向到文件$ ls af
6、ile bfile & errfile,管道的使用,管道操作符|“|”符用于连接左右两个命令,将“|”左边的命令执行结果(输出)作为“|”右边命令的输入 cmd1 | cmd2 在同一条命令中可以使用多个“|”符连接多条命令 cmd1 | cmd2 | . | cmdn,管道的使用,Shell脚本,Shell脚本的概念 基本的脚本编程 运行脚本程序,Shell脚本的概念,Shell脚本程序是Shell命令语句的集合,用于实现特定的功能;Shell脚本程序保存在文本文件中,可以使用文本处理程序进行阅读和编辑;Shell脚本程序是由Shell环境解释执行的,不需要在执行前进行编译;执行Shell程
7、序时,Shell脚本文件需要具有可执行(x)的属性,查看Linux系统脚本,基本脚本编程,使用文本编辑器(vi)建立Shell脚本文件 脚本中应包括的内容 脚本运行环境设置 #!/bin/bash 注释行以#开始 # Clean command history,清除用户命令历史脚本语句history -c设置脚本文件为可执行,运行脚本程序,使用Shell命令程序执行脚本程序$ bash hello.sh 使用“.”命令执行脚本程序$ . hello.sh 直接执行具有执行属性的脚本程序$ ./hello.sh,阶段总结,输入输出文件标准输入、标准输出、标准错误重定向符号22&管道符Shell脚
8、本的组成脚本运行环境设置 注释行脚本语句,阶段练习,将ls命令多次执行的输出结果都重定向到文件ls.log中保存编写并执行Shell脚本用于显示位置变量的值,本章总结,Shell的产生与发展,Bash的主要功能,命令行编辑功能,命令行补全功能,命令历史与命令重复,Shell变量,命令别名,标准输入输出,重定向,管道,Shell脚本概念,基本脚本编程,脚本运行,Bsh Csh Ksh Bash,命令编辑、补全、历史、别名等,环境变量、预定义变量、位置变量、自定义变量,使用编辑键对命令进行输入编辑,使用Tab键对命令名和文件名进行补全,上下方向键浏览历史命令,history命令显示历史命令,alias定义命令别名unalias取消命令别名定义,标准输入、标准输出、标准错误,输入重定向、输出重定向、错误重定向,使用管道连接多条命令执行,执行命令的集合,保存在文件中可重复执行,脚本运行环境设置、注释行、执行语句,三种脚本运行方式脚本文件的可执行属性,实验,任务1:使用历史命令和管道提示1在输入命令时,可先使用上下方向键查找历史命令中与要执行命令类似的命令,然后使用命令行编辑功能对命令进行编辑,这样可以快速输入命令 任务2:Shell脚本的编写 提示1在脚本文件保存后,需要设置脚本文件具有执行属性,才能执行脚本文件,