




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章 Shell基本命令,这一章将开始介绍Linux Shell。一直以来Shell以其稳定、高效和灵活成为系统管理员的首选。本章主要介绍Linux下的基本命令,包括切换目录、查找并查看文件、查看用户信息等。本章过后,读者还应该能够向用户手册寻求帮助。在开始这些内容之前,首先简要介绍一下究竟什么是Shell。,5.1 Shell简介,命令行和Shell这两个概念常常是令人困惑的。在很多并不正式的场合,这两个名词代表着相同的概念,即命令解释器。然而从严格意义上讲,“命令行”指的是供用户输入命令的界面,其本身只是接受输入,然后把命令传递给命令解释器。后者就是Shell。从本质上讲,Shell是一个程序,它在用户和操作系统之间提供了一个面向行的可交互接口。用户在“命令行”中输入命令,运行在后台的Shell把命令转换成指令代码发送给操作系统。Shell提供了很多高级特性,使得用户和操作系统间的交互变得简便和高效。,5.2 印刷约定,Linux命令行界面有一个输入行,用于输入命令。在BASH shell中,命令行以一个美元符号“$”作为提示符,表示用户可以输入命令了。下面就是一个shell提示符,表示命令行的开始: $ 如果正在以root身份执行命令,那么shell提示符将成为“#”,如下所示: # 本书中的命令将以“提示符+命令+注释”的形式给出。以下面这个命令为例: $ sudo dpkg -i linuxqq_1.0-Preview1_i386.deb #安装QQ for Linux,5.3 快速上手:浏览你的硬盘,这一节将带领读者浏览自己电脑上的文件系统。这里的命令都非常简单,以期给读者带来一个整体的印象。稍后将详细讲解各类基本命令。 首先,打开终端,进入根目录看看里面都有些什么。 $ cd / #进入根目录 $ ls #列出文件和目录 bin cdrom etc home initrd.img lib32 lost+found mnt proc sbin tmp var vmlinuz boot dev initrd initrd.img.old lib lib64 media opt root srv sys usr virtualM vmlinuz.old,5.4 提高效率:使用命令行补全和通配符,文件名是命令中最为常见的参数,然而每次完整输入文件名是一件很麻烦的事情,特别当文件名还特别长的时候。幸运的是,BASH shell提供了这样一种特性命令行补全。在输入文件名的时候,只需要输入前面几个字符,然后按下TAB键,shell会自动把文件名补全。例如在/etc目录下: $ cat fs #表示按下TAB键 Shell会自动将其补全为: $ cat fstab,5.5 查看目录和文件,这一节将介绍目录和文件的操作命令这些可能是用户最常用到的命令了。其中的一些在“快速上手”环节已经尝试过了,这里将作进一步讲解,详细讨论命令各个常用选项。读者应该始终牢记的一点是,应该用肌肉,而不是头脑去记忆这些命令和选项。,5.5.1 显示当前目录:pwd,pwd命令会显示当前所在的位置,即工作目录。例如,执行命令: $ cd /usr/local/bin/ #进入/usr/local/bin/目录 $ pwd #显示当前所在位置 /usr/local/bin,5.5.2 改变目录:cd,cd命令是在Linux文件系统的不同部分之间移动的基本工具。当登录系统之后,总是处在用户主目录中。这个目录有一个名字,也就是“路径名”,它是由/home/开头,后面跟着登录的用户名。 输入cd命令,后面跟着一个路径名作为参数,就可以直接进入到另外一个子目录中去。,5.5.3 列出目录内容:ls,ls命令是取“list”的简化形式, ls的命令选项非常之多,这里只讨论一些最常用的选项。ls的基本语法如下所示: ls OPTION. FILE. 不带任何参数的ls命令,用于列出当前目录下的所有文件和子目录。例如: $ cd #进入用户主目录 $ ls bin Examples programming text 公共的 视频 文档 桌面 Desktop Huawei share vmware 模板 图片 音乐,5.5.4 列出目录内容:dir和vdir,Windows用户可能更熟悉dir这个命令。在Linux中,dir除了比ls的功能更少,其他都是一样的: $ dir /etc/init.d/ acpid killprocs reboot acpi-support klogd rmnologin alsa-utils laptop-mode rsync anacron linux-restricted-modules-common samba apache2 loopback screen-cleanup apparmor module-init-tools sendsigs apport mountall-bootclean.sh single atd mountall.sh skeleton ,5.5.5 查看文本文件:cat和more,cat命令用于查看文件内容(通常这是一个文本文件),后跟文件名作为参数。,5.5.6 阅读文件的开头和结尾:head和tail,另两个常用的查看文件的命令是head和tail。分别用于显示文件的开头和结尾。可以使用-n参数来指定显示的行数: $ head -n 2 day weather = day weather = sunny rainy,5.5.7 更好的文本阅读工具:less,less和more非常相似,但功能更为强大。less改进了more命令的很多细节,并添加了许多的特性,这些特性让less看起来更像是一个文本编辑器只是去掉了文本编辑功能。总体来说,less命令提供了下面这些增强功能: 使用光标键在文本文件中前后(甚至左右)滚屏。 用行号或百分比作为书签浏览文件。 实现复杂的检索、高亮显示等操作。 兼容常用的字处理程序(如Emacs、Vim)的键盘操作。 阅读到文件结束时less命令不会退出。 屏幕底部的信息提示更容易控制使用,而且提供了更多的信息。,5.5.8 查找文件内容:grep,在很多时候,并不需要列出文件的全部内容,用户要做的只是找到包含某些信息的一行。这个时候,如果使用more命令一行一行去找的话,无疑是费时费力的。当文件特别大的时候,这样的做法则完全不可行了。为了在文件中寻找某些信息,可以使用grep命令: grep OPTIONS PATTERN FILE.,5.6 我的东西在哪?find命令,随着文件增多,使用搜索工具成了顺理成章的事情。find就是这样一个强大的命令,它能够迅速在指定范围内查找到文件。find命令的基本语法如下所示: find OPTION path. expression 例如,希望在/usr/bin/目录中查找zip命令: $ find /usr/bin/ -name zip -print /usr/bin/zip,5.6 我的东西在哪?find命令,5.7 更快速地定位文件locate命令,尽管find命令已经展现了其强大的搜索能力,但对于大批量的搜索而言,还是显得慢了一些,特别当用户完全不记得自己的文件放在哪里的时候。这时候,locate命令会是一个不错的选择: $ locate *.doc /fishbox/share/book/Linux从入门到精通.doc /fishbox/share/book/linux_mulu.doc /fishbox/share/book/作者介绍.doc ,5.8 从终端运行程序,从终端运行程序只需要简单地键入程序名称即可。在之前的章节中,读者一直在实践着运行程序的过程。像ls、find、locate等这些所谓的Linux命令都只是一些程序而已。类似的,可以这样启动网页浏览器firefox: $ firefox 按下回车键之后,当前终端会被挂起,直到firefox运行完毕(即单击关闭按钮)。如果希望在启动应用程序后继续在终端模拟器中工作,需要在命令后加上“&”,指导程序在后台运行: $ firefox & 1 8449,5.9 查找特定程序:whereis,whereis命令主要用于查找程序文件,并提供这个文件的二进制可执行文件、源代码文件和使用手册页存放的位置。例如,查找find命令: $ whereis find find: /usr/bin/find /usr/share/man/man1/find.1.gz 可以使用-b选项让whereis命令只查找这个程序的二进制可执行文件: $ whereis -b find find: /usr/bin/find 如果whereis无法找到文件,那么将返回一个空字符串: $ whereis xxx xxx:,5.10 用户及版本信息查看,在一台服务器上,同一时间往往会有很多人同时登录。who命令可以查看当前系统中有哪些人登录,以及他们都工作在哪个控制台上: $ who lewis tty7 2008-09-30 21:12 (:0) lewis pts/0 2008-09-30 21:13 (:1.0),5.11 寻求帮助man命令,在Linux中获取帮助是一件非常容易的事情。Linux为几乎每一个命令和系统调用编写了帮助手册。使用man命令可以方便地获取某个命令的帮助信息: $ man find FIND(1) FIND(1) NAME find - search for files in a directory hierarchy SYNOPSIS find -H -L -P path. expression DESCRIPTION This manual page documents the GNU version of find. GNU find searches the directory tree rooted at each given file name by evaluating the Manual page find(1) line 1,5.11 寻求帮助man命令,5.12 获取命令简介:whatis和apropos,man手册中的长篇大论有时候显得太罗嗦了很多情况下,人们只是想要知道一个命令大概可以做些什么于是,whatis满足了大家的好奇心: $ whatis uname uname (1) - print system information whatis从某个程序的使用手册页中抽出一行简单的介绍性文字,帮助用户了解这个程序的大致用途。whatis的原理同locate命令基本一致。 与之相反的一个命令是apropos,这个命令可以通过使用手册中反查到某个命令。,5.13 小结,命令行是Linux的精华部分。所有的系统管理操作都可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 锚地维护合同协议书模板
- 新零售对传统零售业的冲击
- 项目投资合同协议书模板
- 数化制作创业计划书
- 老年人摄影营销策划方案
- 2025年社区团购行业调研分析报告
- 出租快艇合同协议书模板
- 海洋公园营销策划方案举例
- 欠款房屋抵押合同协议书
- 加盟瑞幸商业计划书
- ZJUTTOP100理工类学术期刊目录(2018年版)
- F0值计算公式自动
- 道路交通事故现场勘查课件
- 门店电表记录表
- 心理学在船舶安全管理中的应用
- JJF(鄂) 90-2021 电子辊道秤校准规范(高清版)
- 超星尔雅学习通《今天的日本》章节测试含答案
- 组态王双机热备
- 餐饮量化分级
- 三一重工SCC2000履带吊履带式起重机技术参数
- [精品]GA38-2004《银行营业场所风险等级和防护级别的规定》
评论
0/150
提交评论