Linux操作系统03-Shell.ppt_第1页
Linux操作系统03-Shell.ppt_第2页
Linux操作系统03-Shell.ppt_第3页
Linux操作系统03-Shell.ppt_第4页
Linux操作系统03-Shell.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux操作系统 shell和常用命令 周炯 上海艾基信息技术有限公司 1Acegene IT Co. Ltd. 内容提要 1 shell 2 进程和shell 命令行 2 常用命令 2Acegene IT Co. Ltd. 1、使用SHELL 1.1 什么是Shell 1.2 系统中有几种Shell 1.3 Shell脚本 3Acegene IT Co. Ltd. 1.1 什么是Shell shell提供了一个到Linux操作系统的界面 以方便运行程序。事实上,shell也只不过 是另外一个Linux操作系统程序而已。 shell是一个命令解释器,它可以用来启动 、挂起、停止甚至编写程序。shell是 Linux操作系统的一个整体组成部分,也是 Linux操作系统和UNIX设计的一部分。 4Acegene IT Co. Ltd. 1.1 什么是Shell 如果把Linux操作系统的内核想象成一个球 体的中心,那么shell就是包围内核的外层 。从shell或其他程序向Linux操作系统传 递命令的时候,内核就会做出相应的反应 。 用户Shell配置的位置 /etc/passwd 5Acegene IT Co. Ltd. 1.2 shell 这种shell的内建命令都有哪些? 怎样进行任务控制? 这种shell是否支持命令行编辑? 这种shell是否支持命令行历史记录? 什么是它的重要的开机启动文件或者配置文件? 各个shell的重要环境变量有哪些? 可以使用什么样的命令行提示符? 它支持什么样的编程框架? 6Acegene IT Co. Ltd. 1.2 系统中有几种Shell ash 袖珍的sh兼容的shell 由Kenneth Almquist编写的ash shell是Linux操作系统上尺寸 最小的shell之一。这个shell有24个不同的内建命令和10个不同 的命令行参数。 bash Bourne Again Shell(与ksh和sh兼容) bash就是由Brian Fox和Chet Ramey编写的Bourne Again Shell,它是Linux操作系统上最流行的shell之一。 csh 对tcsh的一个符号链接 ksh pdksh,公共域Korn(与ksh兼容)shell pdksh shell在Linux操作系统中叫做ksh。这个shell和商业化 UNIX中的版本几乎是完全兼容的。 sh 对bash的一个符号链接 tcsh 与csh兼容的shell zsh Z-shell,一个与csh、ksh、和sh兼容的shell 7Acegene IT Co. Ltd. 1.2.2 bash bash就是由Brian Fox和Chet Ramey编写的Bourne Again Shell,它是Linux操作系统上最流行的shell之一 。它有48个内建的命令和十多个命令行参数。 可以使用方向键查阅以前输入的命令(历史记录功能) 可以对某个命令行进行编辑 敲入命令的一部分然后再按下Tab键获得其他部分 自动执行脚本 初始化设置文件/etc/rc /etc/bashrc /etc/profile 用来设置全局(对所有用户都起作用的)参数,比如环境变量或者在第 一次登录进入的时候给你发送一条消息(比如一条欢迎标语)。 用户子目录中的.bashrc登录文件 控制bash shell启动运行方式或者对不同的击键(如退格键)的响应; 用户子目录中.bash_profile文件, 通知s h e l l在用户登录后系统应该使用哪一个资源文件。 8Acegene IT Co. Ltd. 1.3 建立Shell命令脚本程序 shell script (脚本文件) 编辑文件 将其所有命令写入到该文件中, 添加执行权限 将该文件设置为可以执行 运行 9Acegene IT Co. Ltd. 2 Shell命令行和进程 2.1 对shell进行定制设置 2.2 进程管理 2.3 使用重定向和管道 10Acegene IT Co. Ltd. 2.1 对shell进行定制设置 shell包含了“环境变量” 重要的就是$PATH变量 $PS1变量 alias命令 显示环境变量 printenv env set 环境变量由资源文件预先定义 bash shell全局性系统环境变量的资源文件 /etc/rc /etc/bashrc /etc/profile 用户定制的系统环境变量 /.bashrc /.bash_profile 11Acegene IT Co. Ltd. 2.2 进程的定义 Linux是一个多用户多任务的操作系统。 多用户是指多个用户可以在同一时间使用计算机系统 ; 多任务是指Linux可以同时执行几个任务,它可以在 还未执行完一个任务时又执行另一项任务。 Linux用分时管理方法使所有的任务共同分享系统资 源。 进程: Linux系统上所有运行的程序都可以称之 为一个进程。 进程的一个比较正式的定义是在自身的虚拟地址空间 运行的一个单独的程序。 进程与程序是有区别的, 程序只是一个静态的指令集合,不占系统的运行资源; 进程不是程序,虽然它由程序产生。进程是一个随时都可能发 生变化的、动态的、使用系统运行资源的程序。而且一个程序 可以启动多个进程。 12Acegene IT Co. Ltd. 2.2 在后台运行程序 后台运行程序的意思是这个命令继续在内 存中执行,而在这同时shell命令行的控制 权已经返回到了控制台。 对巨型文件进行排序或者对子目录和其他类型 的文件系统进行搜索等等操作都是可以放到后 台去执行的好例子。 运行一个进程命令格式: 进程名 & nohup 进程名 & 13Acegene IT Co. Ltd. 2.2 报告进程状况 PS ps命令是进程查看命令。 ps命令语法格式如下: ps option ps ax ps -ef 常用选项说明如下: -e:显示所有进程。 -f:全格式。 -u:打印用户格式,显示用户名和起始时间。 ps 重要的输出字段 USER进程所有者的用户名 PID进程号 STAT进程状态,常见的值有: R:可执行的。 S:睡眠状态。 Z:僵尸。 I:空闲。 14Acegene IT Co. Ltd. 2.2 结束进程 kill 结束进程的办法有: 组合键: 当需要中断一个前台进程的时候, 通常是使用组合键; kill命令: 该命令可以终止后台进程。 kill命令的语法格式很简单,大致有以下两种方式: kill -s 信号 | -p -a 进程号 kill -l 信号 命令中的参数说明如下: -s:指定需要送出的信号。既可以是信号名也可以对应数字。 -p:指定kill命令只是显示进程的pid,并不真正送出结束信号 。 -l:显示信号名称列表,这也可以在 /usr/include/linux/signal.h文件中找到。 15Acegene IT Co. Ltd. 2.2 休眠进程 sleep命令可使当前正在执行的进程在规定 的时间内处于睡眠。其使用的语法格式为 : $ sleep time time为进程将睡眠的时间,以秒为单位 16Acegene IT Co. Ltd. 2.3 使用重定向和管道 重定向操作符: help helplist.txt help helplist.txt 管道: | ps ax | grep ftpd | wc - l 例子: find /home -name *.doc | xargs fgrep administration | less find *.doc | xargs cat | tr n | sort | uniq | tee dict | less 17Acegene IT Co. Ltd. 3、常用命令 3.1 使用man命令获得帮助 3.2 浏览及搜索文件系统 3.3 阅读子目录及文件 其他命令 df、date、who、cp、mv、rm、mkdir、 wc、vi、gcc、ln、nohup、nice、passwd 、echo、mail、talk、du、grep、chown、 chgrp、chmod、uname 18Acegene IT Co. Ltd. 3.1 使用man命令获得帮助 man可以得到几乎所有命令的有关信息, 包括man命令本身。 # man man Linux操作系统发行版本也为几乎每个程序 、工具、命令或系统编程调用编制了使用 手册页。存放在/usr/man的子目录下。 man命令的使用手册页文件被命名为: /usr/man/man1/man.1.gz 19Acegene IT Co. Ltd. 3.2 浏览及搜索文件系统 3.2.1 使用cd命令进入不同的目录 3.2.2 使用pwd命令查看自己所在的位置 3.2.3 使用find命令在子目录中搜索匹配的 文件 3.2.4 使用whereis命令查找文件 3.2.5 使用locate命令定位文件 3.2.6 使用whatis和apropos命令获取命 令简介 20Acegene IT Co. Ltd. 3.2.1 使用cd命令进入不同目录 输入cd命令,后面跟着一个路径名,就可 以直接进入到另外一个子目录中去 # cd /usr/bin # cd # cd / 你总能够用下面的命令回到自己的用户子 目录(也就是保存自己文件的子目录): # cd 或者 # cd 21Acegene IT Co. Ltd. 3.2.2 pwd命令查看所在位置 pwd(显示工作子目录)命令告诉你自己所 在的位置,并显示当前工作子目录。例如 ,执行命令: # cd /usr/bin 接着输入: # pwd 会看到: /usr/bin 注意:pwd有内置命令和外部命令 22Acegene IT Co. Ltd. 3.2.3 用find在子目录搜索文件 find命令在硬盘驱动器上查找文件。 -name 按名字查找。比如说,如果想查找子目录/usr 中的spell命令,可以采用下面的方法: # find /usr -name spell print -atime 按照日期查找文件,或者可以指定一个日期范 围。例如查找最近一百天没有使用过的程序: # find /usr/bin -type f -atime +100 print -mtime 按修改时间查找,如查找建立不到一天的新 文件或者二十四小时内修改过的文件: #find /usr/bin -type f -mtime -1 print -xdev 按Windows分区查找,xdev参数把查询操作 限制在当前的文件系统之中,检索子目录下所有以 .sys结尾的文件: # find /mnt/dos -name *.sys -print xdev 23Acegene IT Co. Ltd. 3.2.4 使用whereis命令查文件 whereis命令 可以迅速地找到文件,而且 提供二进制可执行文件、源代码文件和使 用手册页存放的位置。 例如: # whereis (-b) find find:/usr/bin/find /usr/man/man1/find.1.gz 24Acegene IT Co. Ltd. 3.2.5 使用locate命令定位文件 文件名数据库(updatedb) locate命令 在文件名数据库中检索文件名 检索要比搜索整个硬盘驱动器要快 # locate *.ps 25Acegene IT Co. Ltd. 3.2.6 whatis和apropos 命令简介 whatis命令: 从程序使用手册中抽出介绍 例如: # whatis who who(1) - show who is logged on makewhatis 创建数据库 apropos命令: 查找可以执行某个操作的程序 man -K: 实现apropos命令同样的功能 其搜索过程会很慢, 搜索结果给出的是每个含有匹配字符串的使用手册页 。 26Acegene IT Co. Ltd. 3.3 阅读子目录及文件 3.3.1 使用ls/ll命令列出子目录的内容清单 3.3.2 使用dir和vdir命令列出子目录的内 容清单 3.3.3 使用cat命令列出及合并文件 3.3.4 使用more命令阅读文件 3.3.5 使用less命令浏览文件 3.3.6 使用head或tail命令阅读文件的开 头和结尾 27Acegene IT Co. Ltd. 3.3.1 ls:列出子目录的内容清单 ls : 列出子目录内容清单 常用参数: -l 长文件名列表 -a 显示所有文件(包括隐含文件) -m 把文件用逗号分隔显示在一行上 -x 按水平对齐的方式而不是缺省的垂直对齐方 式列出文件 -F 特殊显示目录和可执行文件 -R 显示子目录 28Acegene IT Co. Ltd. 3.3.2 ll, dir和vdir:子目录的内容清单 ll命令: 相当于ls -l参数,它缺省地列出文 件的全部信息。 dir或vdir命令。使用上与ls命令类似,但 是使用了一些缺省的参数。 dir命令 像普通的ls命令那样把文件按列对 齐输出。 vdir命令 像ls -l参数,它缺省地列出文件 的全部信息。 29Acegene IT Co. Ltd. 3.3.3 cat:列出及合并文件 cat命令: 把文件内容在屏幕上去显示。 -n 在阅读文件时显示行号 # cat -n test.txt cat 和重定向符“” : cat命令通过输出“重定向” 把文件内容送到其他的文件中去。如: # cat test* test3.txt # cat test.txt test2.txt test3.txt cat和重定向符“” : 文件合并 # cat test.txt test2.txt cat : 创建新文件,输完文本内容后按下 Ctrl+D组合键关闭这个文件。 # cat myfile.txt 30Acegene IT Co. Ltd. 3.3.4 使用more命令阅读文件 more命令: 页命令使你在浏览文件的时候 可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论