学习书目:《名师讲坛:Linux 入门与实战经典》
1 第一章 UNIX和Linux操作系统概述
1.1 Linux系统登录
- 图形界面登录
Linux默认即启动图形界面的。 - 命令行界面登录
由于Linux默认启动图形界面,所以需要切换到命令行界面。打开系统,在图形界面登录页面下,同时按下”Ctrl + Alt + F2“即可切换到命令行登录界面。
如果想退出系统,可输入”exit“命令。
如果想返回图形界面,可同时按下”Ctrl + Alt + F7“。
2 第二章 运行Linux命令及获取帮助
2.1 Linux(UNIX) 命令的格式
命令 [选项][参数] (command[options][arguments])
- 命令:告诉系统做什么。
- 选项:限定命令该怎么运行。
- 在命令中加入选项,可以改变显示的信息类型,并且注意,选项是大小写相关的,而且选项前要冠以“-”。
- 选项可以组合使用,即一个命令中可以同时输入多个选项。
- Linux操作系统对传统的UNIX系统命令进行了一些改进,使之更加简单易学。其中之一就是一些选项可以使用完整的英语单词,但在此时选项之前要冠以”–“而不是”-“。
- 参数:指明命令的操作对象(比如一个文件、目录等)。
整个命令行相当于英语的语句,命令相当于动词,选项相当于形容词,参数相当于名词。
下面各节,将介绍一些简单常用的Linux(UNIX)命令。
2.2 whoami命令
- 命令名称:whoami
- 功能:列出目前登录Linux系统所使用的用户名。
- 命令由来:
- 问题:为什么要设置这样一项命令呢?自己已经登录了系统,难道会不知道用哪个账号登录的吗?
- 回答:原因是在工作时,一个人可能使用多个用户名登录Linux系统,这时不知道使用的是哪个用户也就很正常了。
- 使用示例:
stephen@ubuntu:~$ whoami
stephen
而输入who am i
呢,会出错吗?并没有出错,反而会获得更详细的信息,包括用户名(stephen)、登录的终端(tty2)、当前的日期和时间:
stephen@ubuntu:~$ who am i
stephen tty2 2018-03-18 08:58
2.3 who、w、users、和tty命令
- 命令名称:who
- 功能:显示当前在系统上工作的所有用户。
- 命令由来: 回答:想知道目前有哪些用户在系统上工作。
- 命令名称:w
- 功能:与who 类似,列出所有工作中的用户信息,只是更加详细。
- 命令名称:users
- 功能:与who类似,列出所有工作中的用户信息,只是非常简单,只列出用户名。
stephen@ubuntu:~$ users
stephen
- 命令名称:tty
- 功能:显示目前登录Linux系统所使用的终端。
- 使用示例:
stephen@ubuntu:~$ tty
/dev/tty2
2.4 uname命令及带有选项的命令
- 命令名称:uname
- 英文解释:UNIX name,u是UNIX的缩写。
- 功能:显示系统本身信息。
- 命令由来:大家可以使用who、w等获得Linux系统上的用户信息,当然也想知道所登录的系统的信息。
- 程序示例:
stephen@ubuntu:~$ uname
Linux
可以看出只用uname命令只能获得很有限的信息,可以在命令中假如选项,获取更详细的信息。
- 选项1:-n
- 英文解释:n 是namenode的第一个字符。
- 功能:显示系统的主机名
- 程序示例:
stephen@ubuntu:~$ uname -n
ubuntu
此处,ubuntu是笔者的主机名。
- 选项2:-i
- 英文解释:i是information的第一个字符
- 功能:显示系统使用的硬件平台名
- 程序示例:
stephen@ubuntu:~$ uname -i
x86_64
若想同时获得系统的主机名和硬件平台名,可以使用带有-n和-i组合的uname命令。
组合方式有四种:-n -i、-i -n、-ni、-in,但最终显示的结果相同。程序执行如下:
- 选项3:-r
- 英文解释:relase
- 功能:显示操作系统发布的版本信息
- 程序示例:
stephen@ubuntu:~$ uname -r
4.10.0-28-generic
- 选项4:-s
- 英文解释:system
- 功能:显示操作系统名,与只使用命令uname效果相同。
- 程序示例:
stephen@ubuntu:~$ uname -s
Linux
- 选项5:-m
- 英文解释:machine
- 功能:显示机器硬件名,与选项-i效果相同。
- 程序示例;
stephen@ubuntu:~$ uname -m
x86_64
- 选项6:-p
- 英文解释:processor
- 功能:显示中央处理器的类型
- 程序示例;
stephen@ubuntu:~$ uname -p
x86_64
- 选项7:-a
- 英文解释:all
- 功能:显示所有的信息。
- 程序示例:
看到这个选项,笔者突然感觉好伤心呀,有个-a了我还写上面那么多干嘛呀!记住这一个不就OK了嘛!
选项-a也可以换成完整的英语单词,即–all。如下:
- 选项8:–help
- 功能:获取命令的帮助信息。
- 程序示例:
该选项可以用于其他任何一种命令,以获取其帮助信息。
2.5 date 、cal和clear命令及带有参数的命令
- 命令名称:date
- 功能:显示系统当前的日期和时间
- 程序示例:
stephen@ubuntu~$ date
Sun Mar 18 06:47:18 PDT 2018
- 命令名称:cal
- 英文解释:calendar
- 功能:显示某月的日历
程序示例:
- 选项1:cal 年份
- 功能:显示某一年的全年日历
- 程序示例:
stephen@ubuntu:~$ cal 2018
打印结果太长,便不展示了。
- 选项2:cal 月份 年份
- 功能:显示某年某月的日历
- 程序示例;
- 命令名称:clear
- 功能:清楚终端窗口中的信息
2.6 su和password命令
- 命令名称:su
- 英文解释:switch user (切换用户)
- 功能:从当前的用户切换到一个指定的其他用户。
- 命令由来:
- 问题:为什么要创造su命令呢?
- 回答:在默认情况下,如果用户利用telnet进行远程登录,是不能使用root用户的。所以便创造了su命令,这样,用户便可以先以普通用户登录Linux(UNIX)系统,再使用su命令切换到root用户。
- 程序示例:
stephen@ubuntu:~$ su - root
Password:
root@ubuntu:~#
若您在使用ubuntu系统执行该命令时出现”Authentication failure”的错误提示,可以修改一下密码。
如下:
stephen@ubuntu:~$ sudo passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd:password updated successfully
如果想退回到stephen(普通)用户,可以使用exit命令。程序执行如下:
root@ubuntu:~# exit
logout
su命令可以在任意两个用户之间进行切换,包括root<—>普通、普通<—>普通。有所区别的是,在切换目标是rooty用户时,需要输入root用户的密码,切换目标是普通用户时,不用输入密码便可直接切换过去。
- 命令名称:passwd
- 英文解释:password
- 功能:用于修改用户的密码,查看用户的密码状态。
- 程序示例:
下面是普通用户(stephen)修改密码:若密码太短,系统会不予通过。
stephen@ubuntu:~$ passwd
Changing password for stephen
(current)UNIX passwod:
New UNIX password:
BAD PASSWORD:it is too short
NEW UNIX password
下面是root用户修改密码:可以看出,若新密码太短,系统仅进行了警告,但仍能通过。因为root用户有至高无上的权限。
root@ubuntu:~$ passwd
Changing password for user root.
NEW UNIX password:
BAD PASSWORD:it is too short
Retype new UNIX password:
passwd:all authentication tokens updated successfully
- 选项1:-S 或 -status
- 功能:获取用户的密码状态,比如是否设置了密码。
- 程序示例:
查看当前用户的密码状态:
查看其他用户的密码状态:注意,只有root用户可以查看另一个用户的密码状态。
2.7 whatis 命令与命令的 –help选项
- 命令名称:whatis
- 功能:显示所查询命令的简单说明
- 程序示例:
- 选项名称:–help
- 功能:显示命令的简要说明和选项列表。
- 注意:该选项可以用于绝大多数Linux命令,但不是所有的命令。
- 程序示例:
如上图所示,前两行是uname命令的简要说明,也叫使用摘要,接下来的部分是选项列表。
最后统一说明一下命令whatis和选项–help的由来,即Linux系统为什么要提供这样的命令和选项?
由于Linux或UNIX的命令及参数实在太多了,因此Linux和UNIX的作者们建议用户不要试图记住所有命令的用法,实际上也可能记住。而是借助于Linux或UNIX提供的多种帮助工具。例如命令whatis、选项–help。
2.8 怎样阅读命令的使用摘要
- [ ]中的选项或参数为可选的,即可有可无。
- a|b|c表示只能使用a、b、c中的一个。例如”-u|–utc|–universal”中,只能使用-u或–utc或–universal
stephen@ubuntu:~$ man date
SYNOPSIS
date [OPTION]...[+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
- < >中的选项或参数为变量,即这个选项或参数是可变的。如下面的man命令。
man[<option|number>]<command|filename>
2.9 利用man命令来获取帮助信息
2.10 浏览Man Pages
2.11 利用关键字搜寻Man Pages
2.12 利用info命令来获取帮助
- 命令名称:info
- 功能:获取命令的帮助信息
- 命令由来:
作为一个初学者来说,要使用man命令,看懂Man Pages中的命令或文件使用说明并不是一件易事。
因此Linux系统提供了另一种在线帮助的方法,那就是使用info实用程序(命令)。 - 语法格式:info < Command >