第2章 Shell基本命令
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章 Shell基本命令 图形界面下的操作简单易学,是初学者 的首选,但由于需要大量的系统资源,因此 效率也相对较低。本章主要介绍执行效率较 高的Linux命令操作,包括Shell的启动、命 令格式、常用的Shell命令及Shell的高级应用, 同时还介绍了一个功能强大的编辑器——vi 的使用。
2.1 Shell命令概述
2.2.1目录管理 1.目录的创建与删除命令 (1)mkdir命令 格式:mkdir [选项] 目录 功能:创建目录。 常用选项说明: -m 创建目录的同时设置目录的访问权限。 -p 一次性创建多级目录。
4.2 常用Shell命令
例:创建名为test的目录,并在其下创建Linux目录。 [root@localhost root]#mkdir -p test/linux [root@localhost root]#ls test
2.1.1 Shell简介 Shell 是 Linux 的一个特殊程序,是内核与用户 的接口,它是命令语言、命令解释程序及 程序设计语言的统称。Shell是一个命令语言 解释器,它拥有自己内建的 shell 命令集, shell也能被系统中其他应用程序所调用。
Shell的另一个重要特性是它自身就是一个解 释型的程序设计语言,Shell程序设计语言支 持绝大多数在高级语言中能见到的程序元 素,如函数、变量、数组和程序控制结构。 Linux中的Shell有多种类型,其中最常用的几 种是Bourne Shell(sh)、C Shell(csh)和 Korn Shell(ksh),三种shell各有优缺点。 Linux操作系统缺省的Shell是Bourne Again Shell, 它是Bourne Shell的扩展,简称Bash。
2.改变工作目录的命令cd
– 格式:cd [目录] – 功能:将当前目录改变为指定的目录。若没有指定 目录,则回到用户的主目录,也可以使用“cd ..”返 回到系统的上一级目录。 例:将用户目录切换到/home。 [root@localhost root]#cd /home 运行后屏幕上显示的提示符变为如下形式,表明目 录已经切换成功。 [root@localhost home]#
Baidu Nhomakorabea
2.终端的启动 在字符终端中,输入正确的用户名和密码,用户 即可成功登录。用户登录后,系统将执行一个 称为Shell的程序,正是Shell进程提供了命令行 提示符。一旦出现了Shell提示符,就可以键入 命令名称及命令所需要的参数来执行命令。如 果一条命令花费了很长的时间来运行,或者在 屏幕上产生了大量的输出,可以从键盘上按 Ctrl+C快捷键发出中断信号来中断此命令的运 行。
-h 在查找多个文件时,指示grep不要将文件名加入到输出之前。 例:在文件/etc/passwd中查找“root”字符串。
[root@localhost root]#grep “root” /etc/passwd
3.文件查找命令find – 格式:find [选项] 文件名 – 功能:从指定的目录开始,递归地搜索其各个子目录,查找满足寻找条件的文件并 对之采取相关的操作。此命令提供了相当多的查找条件,功能非常强大。 -name ‘字串’ 查找文件名匹配所给字串中的所有文件,字串内可用通配符*、?、[]。 -group ‘字串’ 查找属于用户组名为所给字串的所有文件。 -user ‘字串’ 查找属于用户名为所给字串的所有文件。 find命令提供的查询条件可以是一个用逻辑运算符not、and、or组成的复合条件。 -a 逻辑与,是系统默认的选项,表示只有当所有的条件都满足时,查询条件才满足。 -o 逻辑或,只要所给的条件中有一个满足时,查询条件就满足。 -! 逻辑非,该运算符表示查找不满足所给条件的文件。 例:查找文件名为‘temp’或是匹配‘install*’的所有文件。 [root@localhost root]#find –name ‘temp’ –o –name ‘install*’
2.1.2 Shell的启动
1.终端的切换
Linux的字符界面也被称作虚拟终端(Virtual Terminal)或者虚拟控制台(Virtual Console)。操作Windows计算机时,用户使用的是真实的终端,而Linux具 有虚拟终端的功能,可为用户提供多个互不干扰、独立工作的界面。操 作Linux计算机时,用户虽然面对的是一套物理终端设备,但却仿佛在操 作多个终端。 Linux的虚拟终端默认有7个,其中从第1个到第6个虚拟终端是字符界面,而 第7个虚拟终端则是图形化用户界面。每个虚拟终端相互独立,用户可以 以相同或不同的账户登录各个虚拟终端,同时使用计算机。
2.1.2 Shell的启动
也可以通过修改/etc/inittab配置文件将系统启动的默认终端设置为字符方 式。具体步骤为:在图形界面下单击“主菜单” ︱“运行程序…”菜单,在弹 出的对话框中输入文本编辑命令“gedit /etc/inittab”,打开配置文件 inittab,也可以右键单击桌面新建一个Shell仿真终端,在终端提示符后输 入“gedit /etc/inittab”命令。 在打开的inittab文件中,找到其中的一行配置“id:5:initdefault:”,其中 数字5代表启动进入图形界面,改为3则使系统启动后进入字符终端界面。 编辑修改完成后,保存修改结果并重新启动系统,则系统在加载内核后 将运行Shell程序进入字符终端。从字符终端进入图形界面,只需在终端 命令行提示符下,键入“startx”,即可进入图形用户界面。反之,用户 从图形界面中注销,即可返回字符终端。
(2)more命令 – 格式:more [选项] 文件名 – 功能:分屏显示文件的内容。在查看文件过程中,因为有的文本过 于庞大,文本在屏幕上迅速闪过,用户来不及看清其内容,而该命 令就可以一次显示一屏文本,显示满之后,停下来,并在终端底部 打印出---more---。同时系统还将显示出已显示文本占全部文本的百 分比,若要继续显示,按回车或空格键即可,按q键退出该命令。 常用选项说明: -P 显示下一屏之前先清屏。 -S 文件中连续的空白行压缩成一个空白行显示。 例:分屏显示/etc目录下的passwd文件的内容。 [root@localhost root]#more /etc/passwd
2.文件内容查询命令grep – 格式:grep [选项] [查找模式] [文件名l,文件名2,…] – 功能:以指定的查找模式搜索文件,通知用户在什么文件中搜 索到与指定的模式匹配的字符串,并且打印出所有包含该字符 串的文本行,该文本行的最前面是该行所在的文件名。
常用选项说明:
-c -i 只显示匹配行的数量。 比较时不区分大小写。
2.1.2 Shell的启动
虚拟终端之间可以通过以下方法进行相互切换。 – Alt+F1~Alt+F7可以从字符界面的虚拟终端切换到其他虚拟终端。 – Ctrl+Alt+F1~Ctrl+Alt+F6可以从图形化用户界面切换到字符界面的虚拟 终端。 – 默认情况下,RedHat9.0在安装时设置为启动后进入图形化的用户登 录界面,用户输入正确的用户名和密码后,会直接进入图形操作环 境GNOME,可以通过上述切换方式切换为字符界面 。
2.Shell命令格式 – 在Shell命令提示符后,用户可输入相关的Shell命令。Shell命令可 由命令名、选项和参数三个部分组成,其中方括号部分表示可选 部分,其基本格式如下所示: – 命令名 [选项] [参数] – 在shell中,一行中可以键入多条命令,用“;”字符分隔。在一 行命令后加“\”表示另起一行继续输入。使用Tab键可以自动补齐。
[root@localhost root]#head -2 /etc/passwd
(5)tail命令。
格式:tail [选项] 文件名 功能:和head命令的功能相对应,如果想查看文件的尾部,可以 使用tail命令。该命令显示一个文件的指定内容,它把指定文件指 定显示范围内的内容显示在标准输出上。 常用选项说明: +n 从第n行以后开始显示。 -n 从距文件尾n行处开始显示。如果省略n参数,系统默认值为10。 例:显示/etc/passwd文件的最后4行内容。 [root@localhost root]#tail -4 /etc/passwd
(3)less命令 less命令与more命令非常相似,输入命令后, 首先显示的是第一屏文本,并在屏幕的底 部出现文件名。用户可使用上下方向键、 Enter键、空格键、PageDown或PageUp键前 后翻阅文本内容,使用q键可退出less命令。
(4)head命令。 格式:head [选项] 文件名 功能:显示文件的头几行内容。 常用选项说明: -n 指定显示文件的前n行,如果没有给出n值,默认设置为10。 例:显示/etc/passwd文件的前2行内容。
3.显示路径的命令pwd
– 格式:pwd – 功能:显示当前目录的绝对路径。 例:显示当前工作路径。 [root@localhost root]#pwd /root
4.显示目录内容的命令ls – 格式:ls [选项] [文件|目录] – 功能:显示指定目录中的文件和子目录信息。当不指定目录时,显示当前目录下的文件 和子目录信息。 常用选项说明: -a 显示所有文件和子目录,包括隐藏文件和隐藏子目录。Linux中的隐藏文件和隐藏子目录 以“.”开头。 -l 显示文件和子目录的详细信息,包括文件类型、权限、所有者和所属组群、文件大小、 最后修改时间、文件名等。 -d 如果参数是目录,则只显示目录的信息,而不显示其中所包含的文件的信息。 -t 按照时间顺序显示。 -R 不仅显示指定目录下的文件和子目录信息,而且还递归地显示各子目录中的文件和子目 录信息。 例:查看当前目录下的文件和子目录信息。 [root@localhost root]#ls 例:查看/etc目录下的所有文件和子目录的详细信息。 [root@localhost root]#ls –al /etc
(2)rmdir命令 – 格式:rmdir [选项] 目录 – 功能:从一个目录中删除一个或多个子目录项,要求目录删除之前 必须为空。
常用选项说明: -p 递归删除目录,当子目录删除后其父目录 为空时,也一同被删除。
例:删除test的目录下的Linux目录,同时将test目录一并删除。 [root@localhost root]#rmdir -p test/linux [root@localhost root]#ls
4.2.2 文件管理
1.显示文件内容命令 用户要查看一个文件的内容时,可以根据显示要求的不同选用以下的命令。 (1)cat命令 格式:cat [选项] 文件名 功能:依次读取其后所指文件的内容并将其输出到标准输出设备上。另外, 还能够用来连接两个或多个文件,形成新的文件。 例:显示install.log文件的内容。 [root@localhost root]#cat install.log 创建文本文件f1,显示文件的内容。 [root@localhost root]#cat >f1 按下ctrl+D键,在当前目录下保存文件f1,之后输入如下命令查看文件内容。 [root@localhost root]#cat f1
3.系统的注销
已经登录的用户如果不再需要使用系统,则 应该注销,退出登录状态。在字符界面下 可以键入logout命令、exit命令或使用Ctrl+D 快捷键。
4.系统的重启 当需要重新启动系统时,输入reboot或 shutdown –r now命令即可。 5.关机 在当前的终端输入halt或者shutdown –h now 命令,将立即关闭计算机。
注意:
– Linux系统严格区分英文字母的大小写 – Shell自动过滤多余的空格
2.1.3 Shell命令格式
1.Shell命令提示符 成功登录Linux后将出现Shell命令提示符,如: [root@localhost root]# 超级用户的命令提示符 [hellen@red hellen]$ 普通用户hellen的命令提示符 (1) [ ]以内@之前为已登录的用户名(如root、hellen),[ ]以内@之后为计 算机的主机名(如red),如果没有设置过主机名,则默认为localhost。 其次为当前目录名(如root、hellen)。 (2)[ ]外为Shell命令的提示符号,“#”是超级用户的提示符,而“$”是普 通用户的提示符。
2.1 Shell命令概述
2.2.1目录管理 1.目录的创建与删除命令 (1)mkdir命令 格式:mkdir [选项] 目录 功能:创建目录。 常用选项说明: -m 创建目录的同时设置目录的访问权限。 -p 一次性创建多级目录。
4.2 常用Shell命令
例:创建名为test的目录,并在其下创建Linux目录。 [root@localhost root]#mkdir -p test/linux [root@localhost root]#ls test
2.1.1 Shell简介 Shell 是 Linux 的一个特殊程序,是内核与用户 的接口,它是命令语言、命令解释程序及 程序设计语言的统称。Shell是一个命令语言 解释器,它拥有自己内建的 shell 命令集, shell也能被系统中其他应用程序所调用。
Shell的另一个重要特性是它自身就是一个解 释型的程序设计语言,Shell程序设计语言支 持绝大多数在高级语言中能见到的程序元 素,如函数、变量、数组和程序控制结构。 Linux中的Shell有多种类型,其中最常用的几 种是Bourne Shell(sh)、C Shell(csh)和 Korn Shell(ksh),三种shell各有优缺点。 Linux操作系统缺省的Shell是Bourne Again Shell, 它是Bourne Shell的扩展,简称Bash。
2.改变工作目录的命令cd
– 格式:cd [目录] – 功能:将当前目录改变为指定的目录。若没有指定 目录,则回到用户的主目录,也可以使用“cd ..”返 回到系统的上一级目录。 例:将用户目录切换到/home。 [root@localhost root]#cd /home 运行后屏幕上显示的提示符变为如下形式,表明目 录已经切换成功。 [root@localhost home]#
Baidu Nhomakorabea
2.终端的启动 在字符终端中,输入正确的用户名和密码,用户 即可成功登录。用户登录后,系统将执行一个 称为Shell的程序,正是Shell进程提供了命令行 提示符。一旦出现了Shell提示符,就可以键入 命令名称及命令所需要的参数来执行命令。如 果一条命令花费了很长的时间来运行,或者在 屏幕上产生了大量的输出,可以从键盘上按 Ctrl+C快捷键发出中断信号来中断此命令的运 行。
-h 在查找多个文件时,指示grep不要将文件名加入到输出之前。 例:在文件/etc/passwd中查找“root”字符串。
[root@localhost root]#grep “root” /etc/passwd
3.文件查找命令find – 格式:find [选项] 文件名 – 功能:从指定的目录开始,递归地搜索其各个子目录,查找满足寻找条件的文件并 对之采取相关的操作。此命令提供了相当多的查找条件,功能非常强大。 -name ‘字串’ 查找文件名匹配所给字串中的所有文件,字串内可用通配符*、?、[]。 -group ‘字串’ 查找属于用户组名为所给字串的所有文件。 -user ‘字串’ 查找属于用户名为所给字串的所有文件。 find命令提供的查询条件可以是一个用逻辑运算符not、and、or组成的复合条件。 -a 逻辑与,是系统默认的选项,表示只有当所有的条件都满足时,查询条件才满足。 -o 逻辑或,只要所给的条件中有一个满足时,查询条件就满足。 -! 逻辑非,该运算符表示查找不满足所给条件的文件。 例:查找文件名为‘temp’或是匹配‘install*’的所有文件。 [root@localhost root]#find –name ‘temp’ –o –name ‘install*’
2.1.2 Shell的启动
1.终端的切换
Linux的字符界面也被称作虚拟终端(Virtual Terminal)或者虚拟控制台(Virtual Console)。操作Windows计算机时,用户使用的是真实的终端,而Linux具 有虚拟终端的功能,可为用户提供多个互不干扰、独立工作的界面。操 作Linux计算机时,用户虽然面对的是一套物理终端设备,但却仿佛在操 作多个终端。 Linux的虚拟终端默认有7个,其中从第1个到第6个虚拟终端是字符界面,而 第7个虚拟终端则是图形化用户界面。每个虚拟终端相互独立,用户可以 以相同或不同的账户登录各个虚拟终端,同时使用计算机。
2.1.2 Shell的启动
也可以通过修改/etc/inittab配置文件将系统启动的默认终端设置为字符方 式。具体步骤为:在图形界面下单击“主菜单” ︱“运行程序…”菜单,在弹 出的对话框中输入文本编辑命令“gedit /etc/inittab”,打开配置文件 inittab,也可以右键单击桌面新建一个Shell仿真终端,在终端提示符后输 入“gedit /etc/inittab”命令。 在打开的inittab文件中,找到其中的一行配置“id:5:initdefault:”,其中 数字5代表启动进入图形界面,改为3则使系统启动后进入字符终端界面。 编辑修改完成后,保存修改结果并重新启动系统,则系统在加载内核后 将运行Shell程序进入字符终端。从字符终端进入图形界面,只需在终端 命令行提示符下,键入“startx”,即可进入图形用户界面。反之,用户 从图形界面中注销,即可返回字符终端。
(2)more命令 – 格式:more [选项] 文件名 – 功能:分屏显示文件的内容。在查看文件过程中,因为有的文本过 于庞大,文本在屏幕上迅速闪过,用户来不及看清其内容,而该命 令就可以一次显示一屏文本,显示满之后,停下来,并在终端底部 打印出---more---。同时系统还将显示出已显示文本占全部文本的百 分比,若要继续显示,按回车或空格键即可,按q键退出该命令。 常用选项说明: -P 显示下一屏之前先清屏。 -S 文件中连续的空白行压缩成一个空白行显示。 例:分屏显示/etc目录下的passwd文件的内容。 [root@localhost root]#more /etc/passwd
2.文件内容查询命令grep – 格式:grep [选项] [查找模式] [文件名l,文件名2,…] – 功能:以指定的查找模式搜索文件,通知用户在什么文件中搜 索到与指定的模式匹配的字符串,并且打印出所有包含该字符 串的文本行,该文本行的最前面是该行所在的文件名。
常用选项说明:
-c -i 只显示匹配行的数量。 比较时不区分大小写。
2.1.2 Shell的启动
虚拟终端之间可以通过以下方法进行相互切换。 – Alt+F1~Alt+F7可以从字符界面的虚拟终端切换到其他虚拟终端。 – Ctrl+Alt+F1~Ctrl+Alt+F6可以从图形化用户界面切换到字符界面的虚拟 终端。 – 默认情况下,RedHat9.0在安装时设置为启动后进入图形化的用户登 录界面,用户输入正确的用户名和密码后,会直接进入图形操作环 境GNOME,可以通过上述切换方式切换为字符界面 。
2.Shell命令格式 – 在Shell命令提示符后,用户可输入相关的Shell命令。Shell命令可 由命令名、选项和参数三个部分组成,其中方括号部分表示可选 部分,其基本格式如下所示: – 命令名 [选项] [参数] – 在shell中,一行中可以键入多条命令,用“;”字符分隔。在一 行命令后加“\”表示另起一行继续输入。使用Tab键可以自动补齐。
[root@localhost root]#head -2 /etc/passwd
(5)tail命令。
格式:tail [选项] 文件名 功能:和head命令的功能相对应,如果想查看文件的尾部,可以 使用tail命令。该命令显示一个文件的指定内容,它把指定文件指 定显示范围内的内容显示在标准输出上。 常用选项说明: +n 从第n行以后开始显示。 -n 从距文件尾n行处开始显示。如果省略n参数,系统默认值为10。 例:显示/etc/passwd文件的最后4行内容。 [root@localhost root]#tail -4 /etc/passwd
(3)less命令 less命令与more命令非常相似,输入命令后, 首先显示的是第一屏文本,并在屏幕的底 部出现文件名。用户可使用上下方向键、 Enter键、空格键、PageDown或PageUp键前 后翻阅文本内容,使用q键可退出less命令。
(4)head命令。 格式:head [选项] 文件名 功能:显示文件的头几行内容。 常用选项说明: -n 指定显示文件的前n行,如果没有给出n值,默认设置为10。 例:显示/etc/passwd文件的前2行内容。
3.显示路径的命令pwd
– 格式:pwd – 功能:显示当前目录的绝对路径。 例:显示当前工作路径。 [root@localhost root]#pwd /root
4.显示目录内容的命令ls – 格式:ls [选项] [文件|目录] – 功能:显示指定目录中的文件和子目录信息。当不指定目录时,显示当前目录下的文件 和子目录信息。 常用选项说明: -a 显示所有文件和子目录,包括隐藏文件和隐藏子目录。Linux中的隐藏文件和隐藏子目录 以“.”开头。 -l 显示文件和子目录的详细信息,包括文件类型、权限、所有者和所属组群、文件大小、 最后修改时间、文件名等。 -d 如果参数是目录,则只显示目录的信息,而不显示其中所包含的文件的信息。 -t 按照时间顺序显示。 -R 不仅显示指定目录下的文件和子目录信息,而且还递归地显示各子目录中的文件和子目 录信息。 例:查看当前目录下的文件和子目录信息。 [root@localhost root]#ls 例:查看/etc目录下的所有文件和子目录的详细信息。 [root@localhost root]#ls –al /etc
(2)rmdir命令 – 格式:rmdir [选项] 目录 – 功能:从一个目录中删除一个或多个子目录项,要求目录删除之前 必须为空。
常用选项说明: -p 递归删除目录,当子目录删除后其父目录 为空时,也一同被删除。
例:删除test的目录下的Linux目录,同时将test目录一并删除。 [root@localhost root]#rmdir -p test/linux [root@localhost root]#ls
4.2.2 文件管理
1.显示文件内容命令 用户要查看一个文件的内容时,可以根据显示要求的不同选用以下的命令。 (1)cat命令 格式:cat [选项] 文件名 功能:依次读取其后所指文件的内容并将其输出到标准输出设备上。另外, 还能够用来连接两个或多个文件,形成新的文件。 例:显示install.log文件的内容。 [root@localhost root]#cat install.log 创建文本文件f1,显示文件的内容。 [root@localhost root]#cat >f1 按下ctrl+D键,在当前目录下保存文件f1,之后输入如下命令查看文件内容。 [root@localhost root]#cat f1
3.系统的注销
已经登录的用户如果不再需要使用系统,则 应该注销,退出登录状态。在字符界面下 可以键入logout命令、exit命令或使用Ctrl+D 快捷键。
4.系统的重启 当需要重新启动系统时,输入reboot或 shutdown –r now命令即可。 5.关机 在当前的终端输入halt或者shutdown –h now 命令,将立即关闭计算机。
注意:
– Linux系统严格区分英文字母的大小写 – Shell自动过滤多余的空格
2.1.3 Shell命令格式
1.Shell命令提示符 成功登录Linux后将出现Shell命令提示符,如: [root@localhost root]# 超级用户的命令提示符 [hellen@red hellen]$ 普通用户hellen的命令提示符 (1) [ ]以内@之前为已登录的用户名(如root、hellen),[ ]以内@之后为计 算机的主机名(如red),如果没有设置过主机名,则默认为localhost。 其次为当前目录名(如root、hellen)。 (2)[ ]外为Shell命令的提示符号,“#”是超级用户的提示符,而“$”是普 通用户的提示符。