Shell简介
Linux的图形化工具非常好用,极大地降低了运维人员操作出错的概率,值得称赞。但是图形化界面其实是调用脚本来完成相应的工作,往往只是为了完成某种工作而设计的,缺乏Linux命令原有的灵活及可控性,另外图形化界面也会更加消耗系统的资源,这也是我学习Linux相关知识的原因,各大云服务提供商的学生机资源有限,而我们一般在服务器安装的都是Centos系统,在运维的时候直接通过命令行模式远程连接服务器。
Shell是一个命令行工具,充当的是人与Linux内核之间的翻译官,我们把一些命令“告诉”终端,Shell就会调用相应的程序服务去完成某些工作,现在包括红帽系统在内的许多主流Linux服务系统默人使用的终端是bash,bash具有以下优点:
- 通过上下方向键来调取过往执行过的Linux指令
- 命令或参数仅需要输入前几位就可以用Tab键补全
- 具有强大的批处理脚本
- 具有实用的环境变量功能
查看帮助指令
Linux系统的指令有很多,我们在平时如果遇到不熟悉的指令,可以通过man命令来了解指令的用处。
比如我们想看看ps命令的介绍,就可以输入man ps来查看信息:
在图片中,我们可以看到有很长的帮助信息,man命令的帮助信息的结构如下表:
结构名称 | 代表意义 |
---|---|
NAME | 命令的名称 |
SYNOPSIS | 参数的大致使用方法 |
DESCRIPTION | 介绍说明 |
EXAMPLES | 演示(附带简单说明) |
OVERVIEW | 概述 |
DEFAULTS | 默认的功能 |
OPTIONS | 具体的可用选项(带介绍) |
ENVIRONMENT | 环境变量 |
FILES | 用到的文件 |
SEE ALSO | 相关的资料 |
HISTORY | 维护历史与联系方式 |
常用的Linux指令汇总
1、echo命令:
说明:用于在终端输出字符串或变量提取后的值。
格式:
命令 | 格式 |
---|---|
echo | [字符串]或[$变量] |
运行截图:
2、date命令
说明:用于显示及设置系统的事件或日期。
格式:
命令 | 格式 |
---|---|
date | [选项][+指定的格式] |
参数及作用:
参数 | 解释 |
---|---|
%t | 跳格[Tab键] |
%H | 小时(00~23) |
%I | 小时(00~12) |
%M | 分钟(00~59) |
%S | 秒(00~59) |
%j | 今年中的第几天 |
运行截图:
3、reboot命令
说明:用于重启系统(执行后系统直接重启)。
格式:
命令 | 格式 |
---|---|
reboot | 直接输入reboot |
4、poweroff命令
说明:用于关闭系统。
格式:
命令 | 格式 |
---|---|
poweroff | 直接输入poweroff |
5、wget命令
说明:用于在终端下载网络文件
格式:
命令 | 格式 |
---|---|
wget | wget [参数] 下载地址 |
参数及作用:
参数 | 解释 |
---|---|
-b | 后台下载模式 |
-p | 下载到指定目录 |
-t | 最大尝试次数 |
-c | 断点续传 |
-r | 递归下载 |
运行截图:
6、ps命令
说明:用于查看系统中的进程状态
Linux系统中时刻运行着很多进程,如果能够合理地管理他们,则可以优化系统的性能。在Linux系统中,有5种常见的进程状态,分别为运行、中断、不可中断、僵死与停止,各自的含义如下:
R(运行):进程正在运行或在运行队列中等待
S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态
D(不可中断):进程不响应系统异步信号,即便kill命令也不能将其终端
Z(僵死):进程已经终止,但进程描述符依然存在,直到父进程调用wait4()系统函数后将进程释放
T(停止):进程收到停止信号后停止运行
格式:
命令 | 格式 |
---|---|
ps | ps [参数] |
参数及作用:
参数|解释
-a|显示所有进程(包括其他用户的进程)
-u|用户以及其他详细信息
-x|显示没有控制终端的进程
运行截图:
7、top命令
说明:用于动态地监测进程活动与系统负载等信息
格式:
命令 | 格式 |
---|---|
top | 直接输入top |
运行截图:
图片中的结果含义:
第一行:系统时间、运行时间、登陆终端数、系统负载
第二行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数
第三行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比
第四行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量
第五行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量
8、pidof命令
说明:用于查询某个指定服务进程的PID值
格式:
命令 | 格式 |
---|---|
pidod | pidof 参数 |
运行截图:
9、kill命令
说明:用于终止某个指定PID的服务进程
格式:
命令 | 格式 |
---|---|
kill | kill 参数 |
运行截图:
10、killall命令
说明:用于终止某个指定名称的服务所对应的全部进程
格式:
命令 | 格式 |
---|---|
killall | killall 参数 |