




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Chapter 7. Conquering the bash Shell Linux提供了两个用户界面:命名为“X”的图形用户界面(GUI),和一个旧的称为shell的命令行界面(CLI)。 那些熟悉的MS - DOS命令指令将识别shell,你使用的文本输入命令系统会响应显示文字答复。但拿MS - DOS命令行与Linux shell对比是不公平的,Linux shell功能更强大。但是,旧的的并不一定意味着不好。 GUI的界面风格很现代,主要是因为容易学习和使用它。但它们并不总是最有效的电脑操作方法。一个熟练的shell用户往往可以比一个用GUI的电脑操作更好。还有,GUI只能使用GUI程序员提供的程序。比较而言,shell的扩展性更强。shell允许用户在现有的程序基础上定义全新的操作序列。 Linux的真正强大在于shell。所以,如果你想掌握Linux,你必须掌握shell。即使你没有很高的追求,你会发现懂得shell的知识会很有帮助。许多其他程序教课书会认为你知道如何使用shell。如果运行“X”失败,并且在你不知道如何使用shell的情况下你很难修复它。 Linux支持各种版本的shell,但最主流的是bash shell,将会在此章节中介绍。本章节解释了如何发布shell命令,以及如何使用shell命令操作文件和目录,以及使用可移动媒体并且启动程序。本章还将诠释“纳米”,一个文本模式下运行是简单文本编辑器,Chapter 7. Conquering the bash Shell 最常见的访问shell方式是通过一个终端窗口,像第5章和第6章介绍的那样。然而,终端窗口并不是唯一访问shell的方法。在第4章中的第4.3.3.2节中介绍了如何通过一个虚拟控制台访问shell。 作为你首个Linux命令,启动一个终端窗口,输入w,并按Enter。你的终端窗口的内容来应该显示的是这样的:billhome bill$ w11:12am up 6 min, 1 user, load average: 0.00, 0.08, 0.05USER TTY FROM LOGIN IDLE JCPU PCPU WHATbill tty1 11:11am 0.00s 0.20s 0.11s -bash w命令告诉Linux来显示系统状态和所有系统用户的列表。在这个例子中,通过这个命令的产生的结果是告诉你现在是上午11:12,这个系统已经启用了6分钟,而且当前登录的只有一个“bill”用户。注意到,命令输出的结果非常简洁,这短短几行包含了太多的信息。这种输出结果是典型的Linux命令。一开始,你可能会发现Linux输出结果很有含义并且难以阅读,但随着你使用的时间越长你越会欣赏Linux传递信息的效率。 Linux命令输出结果简洁并不是由于一部分创造Linux的人的疏忽或懒惰。相反,Linux命令的输出是有设计好的,他可以通过程序来使它可以处理程序以及人类。此样式的输出简化了编写程序的处理命令。 Linux提供了除w命令以外的许多命令,就是因为太多,所以你在学习和复习这些指令的时候会感到绝望。事实上,一些你会经常使用的命令是非常少的。很快,这些指令将成为你的第二感应。 尝试第二个日期命令:billhome bill$ dateFri Oct 5 11:15:20 PST 2004 日期命令显示当前的日期和时间。 如果您觉得使用MS - DOS令人反感或吓人,你可能不会立即使用Linux命令行。然而,让自己花一些时间来调整。Linux命令行有几个特点,比MS - DOS更容易使用、更强大。7.1.1 Correcting Commands 有时候你可能会错误地输入一个命令,使Linux来显示一个错误消息。例如,假如你输入了dat替换了date指令:billhome bill$ datbash: dat: command not found 在这种情况下,仔细检查拼写的命令然后再次尝试输入。如果你在按Enter之前发现一个错误,你可以用后退键或左箭头键回到错误的地方,然后输入正确的字母。退格键会清除字母,而左侧的箭头键则不会。您还可以使用Delete键删除不需要的字母。 正如一个网页浏览器跟踪最近访问过的网站,bash shell对历史列表跟踪最近记录下了命令。你可以通过使用向上箭头键回归bash的历史,或者使用向下箭头键返回,就像在一个网页浏览器使用后退和前进按钮。如果重新发行一个命令,收起它并按下Enter。如果你喜欢,你可以在修改命令之前下定义。当键入shell命令,你可以访问一个迷你软件编辑程序,类似于dos命令编辑器的ms - dos。这迷你软件编辑程序允许您修改命令行并输入关键命令。表7 - 1总结了一些有用的关键命令shell解释。关键命令允许您访问列表中最近500条执行的命令。bash的历史是保存在历史文件存储在用户的主目录。 Table 7-1. Useful editing keystrokes Keystroke(s)FunctionUp arrow在历史列表中移动一个命令Down arrow在历史列表中向前移动一个命令Left arrow向后移动一个字符Right arrow向前移动一个字符Backspace删除一个字符Tab试图完成当前的单词,通过上下文解释它的意思Alt-B向后移动一个词Alt-D删除当前的单词Alt-F向前移动一个单词Ctrl-A移动到此行的开头Ctrl-D删除当前字符Ctrl-E移动到此行的末尾Ctrl-K删除行的结尾Ctrl-L清除屏幕,将行移动到顶端Ctrl-U从头删除行Ctrl-Y删除检索的最后项Esc .插入最后一句话之前的命令(Esc在点之前按,而不是同一时间)Esc ? or Tab尽可能完成列表(Esc在问好之前按,而不是同一时间) 选项卡是一个很有用的编辑键,也可以在输入一个命令时使用。如果你输入文件名的第一部分,按Tab键,shell将尝试查找与你你输入的字符相匹配的文件名。如果文件存在,shell将用适当的字符输入部分的名字。然后您可以按Enter键来执行命令或继续输入其他选项和参数。这个特性称为文件名或命令,让shell更容易使用。 除了为编辑命令行按键,shell解释几个当前按键控制操作的执行的程序。表7 - 2总结了这些按键。例如,键ctrl - c一般取消执行的程序。这按键命令很便捷的,例如,当一个程序需要运行很长的时间,你可以更想去做一些别的运行程序。 Table 7-2. Useful Control keystrokesKeystrokeFunctionCtrl-C发送一个中断信号到当前执行的命令,它通常会终止本身。Ctrl-D发送一个文件尾到当前执行的命令,使用这个击键终止控制台输入。Ctrl-Z暂停当前执行的程序。fg命令继续执行了被停止的程序。 一些其他特殊的关于shell的控制命令字符,见表7 - 3。就像#这个字符;它是最常用的shell脚本,在本章后面你将了解更多的细节。&字符是shell提示符作用是立即返回,而不是等待命令来完成,该命令在后台运行,你可以继续输入更多的命令。这个字符(|)是用来提示部分题为“显示目录的内容。Table 7-3. Other special shell charactersCharacterFunction#标志着线作为一个评论,shell忽略了。;让你在一行中输入多个命令&放置最后的一个命令,使命令作为后台进程来执行,这样一个新的shell提示出现后,立即将命令输入。在文件的名字之前该命令输出存储。输入文件的名字在行的最后,继续以下行命令。|将其从一个指令发送到另一个指令7.2 Working with the Linux Command Prompt Linux命令拥有一个简单的,通用的结构。本节描述它们共同的结构,并解释你如何通过可以使用的命令获得有用的信息。7.2.1 Commands and Arguments一个一般形式的shell命令行是这样的:command options arguments 命令决定shell将执行什么操作,并确定了选项和参数,或者操作的调整。这个选项和参数有可能出现也有可能不出现,用方括号表示。有时命令指定了一个程序文件,将启动并运行,这样的命令叫做一个外部命令。Linux一般储存在这些文件/ bin、/ usr / bin或/ usr / local / bin。系统管理命令通常存储在/ sbin或/ usr / sbin,这些在默认情况下都包含在用户的根路径。当一个命令指定了一个程序文件,shell传递所有参数来指定程序,用于查询并翻译它们,相应地调整其操作。 一些命令不是外部程序文件;相反它们是内置命令shell用于本身。一个重要的方式的不同是在shell的内置命令,它们支持这些。在之后这一节中,你将了解一些bash的内置命令。 Linux命令的名称几乎总是包含小写字母和数字。大多数命令允许你指定选项或参数。然而,在一些特别的情况下,你可能不需要这样做。例如,按键w命令没有选项和参数使Linux来显示当前用户的一个列表。记住,Linux命令对大小写是明确的,要确保每个字符类型的命令在适当的情况下。选项修改方式是一个命令的工作。许多选项包括一个字母,前缀为一个破折号。通常,您可以指定多个选项;当你这样做,你单独的每个选择一个或更多的空间。例如,- h选项的w命令会导致该命令的输出省略标题行:billhome bill$ w -h参数指定文件名或其他目标直接行动的命令。例如,w命令允许您指定一个用户名作为参数,这导致命令列出只有指定的有关用户登陆:billhome bill$ w bill一些命令允许您指定一系列参数;你必须隔开的每个参数。例如,下面的命令将打印一个列表,由根用户登录,没有标题行:billhome bill$ w -h bill当一个命令包含一些参数,一个命令在一行可能不适合。然而,你可以继续打字直到到达一行的末尾,因为shell将自动包装你的输入到下一行。如果你发现线包装有错,你可以在一行的末尾输入一个反斜杠(),按下Enter,然后继续下一行上打字。反斜杠是shell的行连续字符,shell将行加入了反斜杠,仿佛它们是单个行。不要添加任何反斜杠否则延续后功能不正常工作。7.2.2 Getting Help因为Linux拥有如此多的命令,还有如此多的选项,你不能希望能背下它们。为了帮助你,Linux提供了man命令和apropos命令,这让你访问一个帮助数据库,该数据库描述命令和他们的选择。7.2.2.1 Using man每个Linux命令是一个特殊的文件被称为手册页。手册页(或manpages)存储在一组子目录其中包含一个帮助数据库。要访问这个数据库,您可以使用man命令,它很像ms - dos命令的帮助。例如例如要获取帮助使用w命令,输入:billhome bill$ man w图7 - 1展示了输出结果,将该命令显示为一个页面。注意冒号提示出现在屏幕的左下角。页面向前,按空格键;页面向后,按b键。退出程序的人,按q键。Manpages的组织根据一个共同的格式。在联机帮助页的开始,你会发现页面名称和部分的数据库页面显示在括号中。例如,图7 - 1展示了“W(1)“在左上角,和右下角。这意味着,你在第一节的联机帮助页(属于部分的命令)中的w命令。Figure 7-1. A typical manpage接下来输出名称和命令的简单描述。然后是一个大纲的命令,它显示了您可以指定的选项和参数。方括号附上的部分命令,您可以选择包括或省略。接下来的详细描述操作的命令,其次是一个描述它的选项。当你学习在Linux,你会发现它方便预定一个终端窗口或虚拟控制台运行man命令。或者您可以使用Konqueror浏览manpages。浏览URI man:/ / index 会提出Unix手册索引,你可以跳转到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深度学习在信息抽取中的应用-洞察及研究
- 智能金融创新与风险管理-洞察及研究
- 民族关系与经济发展-洞察及研究
- 激光切割中的能量转换与利用-洞察及研究
- 人类活动对鸟类生态位影响-洞察及研究
- 建材产业数字化转型与碳中和目标的融合-洞察及研究
- B2B平台用户体验研究-洞察及研究
- 【《城市竞争力评价指标体系分析案例》2400字】
- 人事个人工作总结
- 生态农业体验区商铺租赁及乡村旅游合作合同
- 地铁光电缆基础知识培训课件
- 2024年下半年黑龙江省嫩江铁路有限责任公司校招笔试题带答案
- 2025廉洁答题题库与答案
- 矿山支护工培训课件
- 整本书阅读教学课件
- 2025东莞市公安局长安分局警务辅助人员招聘考试笔试试题(含答案)
- 急性ST段抬高型心肌梗死的护理课件
- DBJ50-T-200-2024 建筑桩基础技术标准
- 内分泌健康宣教
- 【高朋律师事务所】RWA发展研究报告:法律、监管和前瞻(2025年)
- 2025至2030中国电动汽车用电动机行业项目调研及市场前景预测评估报告
评论
0/150
提交评论