一、强大好用的shell
shell中充当的是人与内核(硬件)之间的翻译官,用户把一些命令告诉终端,它就会调用相应的服务区完成某些工作。
许多Linux系统默认使用的终端是Bash(Bourne-Again SHell)解释器,主要有以下四项优势
通过上下键来调取过往执行的Linux命令;
命令或参数仅需要输入前几位就可以用tab补全;
具有强大的批处理脚本;
具有实用的环境变量功能。
二、执行查看帮助命令
Linux系统中已经有了Bash这么好用的“翻译官”,那么接下来就有必要好好学习下怎么跟它沟通了。要想准确、高效地完成各种任务,仅依赖于命令本身是不够的,还应该根据实际情况来灵活调整各种命令的参数。比如,我们切寿司时尽管可以用菜刀,但米粒一定会撒得满地都是,因此寿司刀上设计的用于透气的圆孔就是为了更好地适应场景而额外增加的参数。当您学完本书并具备一定的工作经验之后,一定能够领悟Linux命令的奥秘。常见执行Linux命令的格式是这样的:
命令名称 [命令参数] [命令对象]
注意,命令名称、命令参数、命令对象之间请用空格键分隔
例如:在命令行终端中输入man man命令来查看man命令自身的帮助信息
在man命令帮助信息的界面中,所包含的常用操作按键及其用途如下表
按键
用途
空格键
向下翻一页
PaGe down
向下翻一页
PaGe up
向上翻一页
home
直接前往首页
end
直接前往尾页
/
从上至下搜索某个关键词,如“/linux”
?
从下至上搜索某个关键词,如“?linux”
n
定位到下一个搜索到的关键词
N
定位到上一个搜索到的关键词
q
退出帮助文档
man命令的帮助信息的结构如下表
结构名称
代表意义
NAME
命令的名称
SYNOPSIS
参数的大致使用方法
DESCRIPTION
介绍说明
EXAMPLES
演示(附带简单说明)
OVERVIEW
概述
DEFAULTS
默认的功能
OPTIONS
具体的可用选项(带介绍)
ENVIRONMENT
环境变量
FILES
用到的文件
SEE ALSO
相关的资料
HISTORY
维护历史与联系方式
三、常用系统工作命令
1、echo命令
echo命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | $变量]”。
例如,把指定字符串“linuxidc.com”输出到终端屏幕的命令为:
[root@linuxidc ~]# echo linuxidc.Com
该命令会在终端屏幕上显示如下信息:
linuxidc.Com
使用$变量的方式提取变量SHELL的值,并将其输出到屏幕上:
[root@linuxidc ~]# echo $SHELL
/bin/bash
2、date命令
date命令用于显示及设置系统的时间或日期,格式为“date [选项] [+指定的格式]”。
date命令中常见的参数格式如下表
参数
作用
%t
跳格[Tab键]
%H
小时(00~23)
%I
小时(00~12)
%M
分钟(00~59)
%S
秒(00~59)
%j
今年中的第几天
下面举例说明:
3、reboot命令
reboot命令用于重启系统,其格式为reboot。
由于重启计算机这种操作会涉及硬件资源的管理权限,因此默认只能使用root管理员来重启。
4、poweroff命令
poweroff命令用于关闭系统,其格式为poweroff。
该命令与reboot命令相同,都会涉及硬件资源的管理权限,因此默认只有root管理员才可以关闭电脑。
5、wget命令
参数及作用如下表
参数
作用
-b
后台下载模式
-P
下载到指定目录
-t
最大尝试次数
-c
断点续传
-p
下载页面内所有资源,包括图片、视频等
-r
递归下载
6、ps命令
ps命令用于查看系统中的进程状态,格式为“ps [参数]”。
ps命令的常见参数以及作用如下表
参数
作用
-a
显示所有进程(包括其他用户的进程)
-u
用户以及其他详细信息
-x
显示没有控制终端的进程
Linux系统中时刻运行着许多进程,如果能够合理地管理它们,则可以优化系统的性能。
在Linux系统中,有5种常见的进程状态,分别为运行、中断、不可中断、僵死与停止,其各自含义如下所示。
R(运行):进程正在运行或在运行队列中等待。
S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该 状态。
D(不可中断):进程不响应系统异步信号,即便用kill命令也不能将其中断。
Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。
T(停止):进程收到停止信号后停止运行。
当执行ps aux命令后通常会看到如下图所示的进程状态(太多了只截取部分)
7、top命令
top命令用于动态地监视进程活动与系统负载等信息,其格式为top。
top命令相当强大,能够动态地查看系统运维状态,完全将它看作Linux中的“强化版的Windows任务管理器”。
top命令的运行界面如图
8、pidof命令
pidof命令用于查询某个指定服务进程的PID值,格式为“pidof [参数] [服务名称]”。
每个进程的进程号码值(PID)是唯一的,因此可以通过PID来区分不同的进程。
例如,可以使用如下命令来查询本机上sshd服务程序的PID
9、kill命令
kill命令用于终止某个指定PID的服务进程,格式为“kill [参数] [进程PID]”。
使用kill命令把上面用pidof命令查询到的PID所代表的进程终止掉。
例如:kill 1593 这种操作的效果等同于强制停止sshd服务
10、killall命令
killall命令用于终止某个指定名称的服务所对应的全部进程,格式为:“killall [参数] [服务名称]”。
通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果逐个去结束这些进程会比较麻烦,
此时可以使用killall命令来批量结束某个服务程序带有的全部进程。例如:killall httpd