Linux常用命令
——《Linux就该这么学》笔记
计算机硬件是由运算器、控制器、存储器、输入/输出设备等共同组成的。让各种硬件设备各司其职且又能协同运行的东西就是系统内核。
操作系统的内核就是对硬件抽象。
Linux系统的内核负责完成对硬件资源的分配、调度等管理任务。
Linux系统主流Shell是Bash,具有如下优势
1.通过上下方向键来调取过往执行过的Linux命令
2.命令或参数仅需输入前几位就可以用Tab键补全
3.具有强大的批处理脚本
4.具有实用的环境变量功能
Linux命令格式 : 命令名称 [命令参数] [命令对象]
命令参数分为长格式(前缀 --)和短格式(前缀 -)
命令对象一般指要处理的文件、目录、用户等资源
查看帮助文档命令man
man [命令名称]
帮助信息界面中可以使用下面按键操作
空格键 : 向下翻一页
PaGe down : 向下翻一页
PaGe up : 向上翻一页
home : 直接前往首页
end : 直接前往尾页
/ : 从上之下搜索某个关键词
? : 从下至上搜索某个关键词
n : 定位到下一个搜索到的关键词
N(shitf n) : 定位到上一个搜索到的关键词
q : 退出帮助文档
man命令帮助信息的结构
NAME : 命令名称
SYNOPSIS : 参数的大致使用方法
DESCRIPTION : 介绍说明
EXAMPLES : 演示,附带简单说明
OVERVIEW : 概述
DEFAULTS : 默认的功能
OPTIONS : 具体的可用选项
ENVIRONMENT : 环境变量
FILES : 用到的文件
SEE ALSO : 相关资料
HISTORY : 维护历史与联系方式
echo命令
用于在终端输出字符串或变量提取后的值;
格式 : echo [字符串|$变量]
date命令
用于显示及设置系统的时间或日期;
格式: date [参数] [+指定的格式]
参数及作用
%t : 跳格[Tab键]
%H : 小时(00-23)
%I : 小时(00-12)
%M : 分钟(00-59)
%S : 秒(00-59)
%j : 今年中的第几天
%Y : 年
%m : 月
%d : 天
设置时间使用选项 s
date -s "20180911 20:30:00"
reboot命令
用于重启系统;默认只有root管理员可以使用该命令
格式: reboot
poweroff命令
用于关闭系统;默认只有root管理员可以使用该命令
格式: poweroff
wget命令
用于在终端中下载网络文件
格式: wget [参数] 下载地址
参数及作用
-b : 后台下载模式
-P : 下载到指定目录
-t : 最大尝试次数
-c : 断点续传
-p : 下载页面内所有资源,包括图片、视频等
-r : 递归下载
ps命令
用于查看系统中的进程状态
格式: ps [参数]
参数及作用
-a : 显示所有进程(包括其他用户的进程)
-u : 用户以及其他详细信息
-x : 显示没有控制终端的进程
Linux中进程状态常见的有5种
R(运行) S(中断) D(不可中断) Z(僵死) T(停止)
top命令
用于动态的监视进程活动与系统负载等信息
格式: top
pidof命令
用于查询某个指定服务进程的PID值
格式: pidof [参数] [服务名称]
kill命令
用于终止某个指定PID的服务进程
格式: kill [参数] [进程PID]
killall命令
用于终止某个指定名称的服务所对应的全部进程
格式: killall [参数] [服务名称]
系统状态检测命令
ifconfig命令
用于获取网卡配置与网络状态等信息
格式: ifconfig [网络设置] [参数]
uname命令
用于查看系统内核与系统版本等信息
格式: uname [-a]
-a参数可以完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息
当前系统版本的详细信息
cat /etc/redhat-release
uptime命令
用于查看系统的负载信息
格式: uptime
显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息
平均负载值指系统在最近1分钟、5分钟、15分钟内的压力情况
free命令
用于显示当前系统中内存的使用量信息
格式: free [-h]
who命令
用于查看当前登入主机的用户终端信息
格式: who [参数]
last命令
用于查看所有系统的登录记录
格式: last [参数]
这些信息是以日志文件的形式保存的,容易被黑客修改,所以不能单纯以该信息判断系统是否被入侵
history命令
用于显示历史执行过的命令
格式: history [参数]
默认显示最近1000条命令记录。可以修改 /etc/profile 文件中的 HISTSIZE 变量值。
使用 "!编码数字" 可以重复执行该命令
参数-c 是清空历史命令记录
sosreport命令
用于收集系统配置及架构信息并输出诊断文档
格式: sosreport
工作目录切换命令
工作目录是指用户当前在系统中所处的位置
pwd命令
用于显示用户当前所处的工作目录
格式: pwd [参数]
cd命令
用于切换工作路径
格式: cd [目录名称]
常用形式
cd - : 返回到上一次所处的目录
cd ..: 进入上一级目录
cd ~ : 切换到当前用户的家目录
cd ~username : 切换到其他用户的家目录
ls命令
用于显示目录中的文件信息
格式: ls [参数] [文件]
文本文件编辑命令
cat命令
用于查看纯文本文件,适合内容较少
格式: cat [参数] [文件]
more命令
用于查看纯文本文件,适合内容较多
格式: more [参数] [文件]
使用 空格键 或者 回车键 向下翻页
head命令
用于查看纯文本文档的前N行
格式: head [参数] [文件]
eg: head -n 100 文件名
tail命令
用于查看纯文本文档的后N行或者持续刷新内容
格式: tail [参数] [文件]
tr命令
用于替换文本文件中的字符
格式: tr [旧字符] [新字符]
wc命令
用于统计指定文本的行数、字数、字节数
格式: wc [参数] 文本
stat命令
用于查看文件的具体存储信息和时间等信息
格式: stat 文件名称
cut命令
用于按"列"提取文本字符
格式: cut [参数] 文本
diff命令
用于比较多个文本文件的差异
格式: diff [参数] 文件
文本目录管理命令
文件的创建、修改、复制、剪切、更名与删除等操作
touch命令
用于创建空白文件或设置文件的时间
格式: touch [参数] [文件]
参数及作用
-a : 仅修改"读取时间"(atime)
-m : 仅修改"修改时间"(mtime)
-d : 同时修改atime与mtime
mkdir命令
用于创建空白的目录
格式: mkdir [参数] 目录
cp命令
用于复制文件或目录
格式: cp [参数] 源文件 目标文件
复制操作具体有3种情况
如果目标文件是目录,则会把源文件复制到该目录中
如果目标文件也是普通文件,则会询问是否覆盖它
如果目标文件不存在,则执行正常的复制操作
参数及其作用
-p: 保留原始文件的属性
-d: 若对象为"链接文件",则保留该"链接文件"的属性
-r: 递归持续复制(用于目录)
-i: 若目录文件存在则询问是否覆盖
-a: 相当于-pdr
mv命令
用于剪切文件或者重命名
格式: mv [参数] 源文件 [目标路径|目标文件名]
rm命令
用于删除文件或目录
格式: rm [参数] 文件
dd命令
用于按照指定大小和个数的数据块来复制文件或转换文件
格式: dd [参数]
参数及其作用
if: 输入的文件名称
of: 输出的文件名称
bs: 设置每个"块"的大小
count: 设置要复制"块"的个数
file命令
用于查看文件的类型
格式: file 文件名
Linux系统中一切皆是文件
打包压缩与搜索命令
压缩文件体积小,在网速相同的情况下,传输时间短
tar命令
用于对文件进行打包压缩或解压
格式: tar [参数] [文件]
参数及其作用
-c: 创建压缩文件
-x: 解开压缩文件
-t: 查看压缩包内有哪些文件
-z: 用Gzip压缩或者解压
-j: 用bzip2压缩或者解压
-v: 显示压缩或者解压的过程
-f: 目标文件名
-p: 保留原始的权限与属性
-P: 使用绝对路径来压缩
-C: 指定解压到的目录
grep命令
用于在文本中执行关键词搜索
格式: grep [参数] [文件]
参数及其作用
-b: 将可执行文件(binary)当作文本文件(text)来搜索
-c: 仅显示找到的行数
-i: 忽略大小写
-n: 显示行号
-v: 反向选择——仅列出没有"关键词"的行
find命令
用于按照指定条件来查找文件
格式: find [查找路径] 寻找条件 操作
参数及其作用
-name: 匹配名称
-perm: 匹配权限(mode为完全匹配,-mode为包含即可)
-user: 匹配所有者
-group: 匹配所有组
-mtime -n +n: 匹配修改内容的时间(-n指n天以内,+n指n天以前)
-atime -n +n: 匹配访问文件的时间(-n指n天以内,+n指n天以前)
-ctime -n +n: 匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
-nouser:匹配无所有者的文件
-nogroup:匹配无所有组的文件
-newer f1 !f2: 匹配比文件f1新但比f2旧的文件
--type b/d/c/p/l/f:匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size:匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)
-prune:忽略某个目录
-exec …… {}\; : 后面可跟用于进一步处理搜索结果的命令