第二节
一、实验内容:
1.实验楼环境介绍
2.常用Shell命令与快捷键
3.Linux使用小技巧
二、实验知识点
1.Linux基本命令
2.通配符的使用
3.查看帮助文档
Linux桌面环境介绍:Unix/Linux本身没有图形界面,看到的只是运行在其上的一套软件,类似于Windows95之前的DOS环境的一套软件;而Linux上的这套软件以前是Xfree86,现在则是xorg(X.Org),而这套软件又是通过X窗口系统(X Window System,也常称为X11或X)实现,X本身只是工具包及架构协议,而xorg便是X架构规范的一个提供图形界面服务的服务器,就像实现了http协议提供web服务的Apache.如果只有服务器也是不能实现一个完整的桌面环境,当然还需要一个客户端,我们称为X Client,像如下几个目前熟知且流行的实现了客户端功能的桌面环境KDE、GNOME、XFCE,LXDE。其中就有你看到的,实验楼目前使用的XFCE桌面环境。
Linux终端
通常我们使用Linux时,并不是直接与系统打交道,而是通过一个叫作Shell的中间程序来完成。在图形界面下为了实现让我们在一个窗口中完成用户输入与显示输出,Linux系统提供了一个叫作终端模拟器的程序(Terminal)。下面是几个常见的终端模拟器:gnome-terminal、Konsole,xterm,rxvt,kvt,nxterm与eterm。目前我们使用的终端程序是xfce桌面环境自带的xfce-terminal。不过要注意的是这里所说的终端(Terminal)与控制台(Console)是有区别的。
终端本质上是对应着Linux上的/dev/tty设备,Linux 的多用户登录就是通过不同的/dev/tty设备完成的,Linux默认提供了6个纯命令行界面的‘terminal’(准确的说这里应该是6个virtual consoles)来让用户登录。在物理机系统上你可以通过[Ctrl]+[Alt]+[F1]~[F6]进行切换。
3.Shell
通常在图形界面中对实际体验带来差异的不是上述不同发行版的各种终端模拟器,而是这个Shell(壳)。有壳就有核,这里的核就是指Unix/Linux内核,Shell是指‘提供给使用者使用界面’的软件(命令解析器),类似于DOS下的command(命令行)与后来的cmd.exe。普通意义上的Shell就是可以接受用户输入命令的程序。它之所以被称为Shell是因为它隐藏了操作系统底层的细节。同样Unix/Linux下的图形用户界面GNOME与KDE,有时也被称为“虚拟shell”或‘图形shell’。
Unix/Linux操作系统下的Shell既是用户交互的界面,也是控制系统的脚本语言。当然这一点有别于Windows下的命令行,虽然该命令行业提供了很简单的控制语句。在Windows操作系统下,有些用户从来都不会直接使用Shell,然而在UNIX系列操作系统下,Shell仍然是控制系统启动、X11启动与很多其他使用工具的脚本解释程序。
在UNIX/Linux中比较流行的常见的Shell有bash、zsh、ksh、csh等,Ubuntu终端默认使用的是bash,默认的桌面环境是GNOME或Unity(基于GNOMe),但我们的环境中分别是zsh与xfce。
命令行操作体验:
linux中最重要的就是命令,这就包含了2个过程:输入与输出。
输入:输入当然是打开终端然后按键盘输入,然后回车。
输出:输出会返回想要的结果,比如查看什么文件就会返回文件内容。如果只是执行,执行失败就会告诉你哪里错了,如果执行成功那么会没有输出,因为:没有结果就是最好的结果
几个技巧:
1)常用快捷键
快捷键
作用
[Tab]
补全命令、目录、命令参数……
[Ctrl+c]
强行终止当前程序,终端不会退出
[Ctrl+d]
键盘输入结束,或退出终端
[Ctrl+s]
暂停当前程序,暂停后按下任意键恢复运行
[Ctrl+z]
将当前程序放到后台运行,回复到前台为命令fg
[Ctrl+a]
将光标移到输入行头,相当于Home键
[Ctrl+e]
将光标移到输入行末,相当于End键
[Ctrl+k]
删除从光标位置到行末
[Alt+Backspace]
向前删除一个单词
[Shift+PgUp]
将终端显示向上滚动
[Shift+PgDn]
将终端显示向下滚动
2)学会利用历史输入命令
3)学会使用通配符:主要有星号(*)与反问号(?),用来对字符串进行模糊匹配,比如文件名、参数名。当查找文件夹时,可以使用它来代替一个或多个真正字符,当不知道真正字符或懒得输入完整名字时,我们通常使用通配符代替一个或多个真正字符。
通配符使用
字符
含义
*
匹配0或多个字符
?
匹配任意一个字符
[list]
匹配list中的任意单一字符
[^list]
匹配除list中任意单一字符以外的字符
[c1-c2]
匹配c1-c2中任意单一字符,如[0-9]、[a-z]
{string1,string2,...}
匹配string1或string2或更多其一字符串
{c1,c2,...}
匹配c1-c2中全部字符,如{1..10}
4)学会在命令行中获取帮助
man命令,是Manual pages的缩写。是UNIX或类UNIX操作系统中在线软件文档的一种普遍形式,包括计算机程序(包括库与系统调用)、证实的标准与惯例,甚至是抽象的概念。用户可以通过执行man命令调用手册页
man
#如查看man命令本身使用方式:
man man
所有手册页遵循一个常见布局,为了通过简单的ASCII文本展示而被优化,而这种情况下可能没有任何形式的高亮或字体控制。一般包括以下部分内容:
NAME(名称)
该命令或函数名称,接着是一行简介
SYNOPSIS(概要)
对于命令,正式的描述它如何运行,以及需要什么样的命令行参数。对于函数,介绍函数所需的参数,以及哪个头问价包含该函数的定义。
DESCROPTION(说明)
命令或函数功能的文本描述
EXAMPLES(说明)
命令或函数功能的文本描述
SEE ALSO(参见)
相关命令或函数的列表
也可能存在其他部分内容步入OPTIONS(选项),EXIT STATUS(退出状态),ENVIRONMENT(环境),BUGS(程序漏洞),FILES(文件),AUTHORS(作者),REPORTING BUGS(已知漏洞)