走进Linux_Linux命令使用与查询

引:从浅入深,我们也从基础命令开始。学会基本命令的使用,学会怎么去查命令的使用,最后学会一丢丢维护(开关机)。

基础命令

开始执行命令

首先我们要了解命令的格式:

command(命令或可执行文件) -options parameter1(参数1) parameter2(参数2)

如果命令太长,我们可以使用反斜杠(\)来转义[enter符号],注意反斜杠必须立刻接特殊字符,才能转义。

在linux下面是区分大小写的。

基础命令的操作

  1. 显示日期与时间的命令:date
  2. 显示日历的命令:cal
  3. 简单好用的计算器:bc,使用quit停止

重要的热键

  1. Tab按键:具有命令补全,文件补齐的功能
  2. ctrl + c:可以让程序立刻停下来
  3. ctrl + d:通常代码键盘输入结束,相当于exit

在线求助man page 与info page

man page

man其实是manual(操作说明)的简写,只要通过(man + 命令) 就会有详细的说明出现。

如 man date可以得到下面的文本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
DATE(1)                                  User Commands                                  DATE(1)

NAME
date - print or set the system date and time

SYNOPSIS
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

DESCRIPTION
Display the current time in the given FORMAT, or set the system date.

Mandatory arguments to long options are mandatory for short options too.

-d, --date=STRING
display time described by STRING, not 'now'

...省略其他参数

ENVIRONMENT

EXAMPLES

DATE STRING

AUTHOR
Written by David MacKenzie.

COPYRIGHT

SEE ALSO

GNU coreutils 8.22 November 2016 DATE(1)

我们首先看到的是“DATE(1)”,这个(1)是有特殊含义的,如下表:

代号 代表内容
1 用户在shell环境中可以操作的命令或可执行的文件
2 系统内核可调用的函数与工具等
3 一些常用的函数与函数库,大部分为C的函数库
4 设备文件的说明,通常在/dev的文件
5 配置文件或者某些文件的格式
6 游戏
7 惯例与协议等,例如Linux文件系统,网络协议、ASCII code等说明
8 系统管理员与可用的管理命令
9 跟kernel有关的文件

我们要特别注意1,5,8这三个号码,尽量背下来。

在上面的man page中,以NAME作为开始介绍,最后还有个SEE ALSO来作为结束。基本上,man page大致分为以下几个部分:

代号 内容说明
NAME 简短的命令、数据名称说明
SYNOPSIS 简短的命令执行语法(syntax)简介
DESCRIPTION 较为完整的说明,最好仔细看看
OPTIONS 针对SYNNPSIS部分中,有列举的所有可用的选项说明
COMMANDS 在这个程序在执行的时候,可以在此程序中执行的命令
FILES 这个程序或数据所使用或参考或连接到的某些文件
SEE ALSO 这个命令或数据有相关的其他说明
EXAMPLES 一些可以参考的范例
BUGS 是否有相关的错误

通常在查询某些数据是这样来查阅的:

  1. 先看NAME的项目,略微看一下数据的意思
  2. 再仔细看一下DESCRIPTION,这个部分会提到很多相关的资料和用法。
  3. 如果这个命令其实很熟悉了,那么主要就是查询OPTIONS的部分了。
  4. 最后会看一下和这个资料有关的还有哪些东西可以使用。
  5. 某些说明内容还会列举有关的文件(FILES)来提供我们参考。

man page 常用的按键:

按键 进行工作
空格键 向下翻一页
Page Down 向下翻一页
Page Up 向上翻一页
Home 去到第一页
End 在去到最后一页
/string 向下查询string字符串
?string 向上查询string字符串
n,N 利用/或?来查询字符串时,可以用n来继续查询下一个查询,可以利用N来进行反向查询
q 结束这次man page

下面还有两个man的用途:

  1. man -f command (= whatis):查询和command这个命令有关的说明文件
  2. man -k data(= apropos):查询包含data这个数据有关的文件

info page

info与man的用途差不多,都是用来查询命令的用法或者文件的格式,但是与man page一下子输出一堆信息不同的是,info page则是将文件数据拆成一个一个段落,每个段落用自己的页面来撰写,并且在各个页面中还有类似网页的“超链接”来调到各个页面,每个独立的页面也被称为一个节点(node)。

这里这里不多说,有兴趣者可以自己去看看使用。

其他有用的文件

一般而言,命令或者软件开发者都会将自己的命令或者是软件的说明制作成“在线帮助文件”,但是毕竟不是什么都需要做成在线帮助文件的,在/usr/share/doc中我们会发现会有很多说明文件文档,这些会告诉我们怎么做,以及一些相关的原理。

开机与关机

开机与登录

一般服务器都不怎么重启,我们在登录服务器的时候,基本上都是使用ssh来登录,我们可以使用下面的命令:

ssh ip

在这个命令之后会要求与你输入密码即可成功。

关机

在Linux中,由于每个程序都是在后台运行的,因此你看不到屏幕后面其实可能有很多人同时在你的主机上面工作,所以我们不能随意关机。所以在正常情况下,要关机时要注意下面几件事:

  1. 查看系统的使用状态
    • 如果要看目前有谁在线:执行“who”这个命令
    • 如果要看网络的联机状态:执行“netstat -a”这个命令
    • 如果要看后台执行的程序:执行“ps -aux”这个命令
  2. 通知在线用户关机的时刻
  3. 正确地关机命令使用:shutdown与reboot
  4. 将数据同步写入硬盘的命令:sync
  5. 惯用的关机命令:shutdown
  6. 重启、关机:reboot,halt,poweroff

总结

这一章最为基础,灰常重要,就像地基,只有有了地基,我们才能好好造下面的房子。

参考

  1. 《鸟哥的Linux私房菜》