文件目录
bin:(binary) 存储的二进制文件,文件都可以被运行
dev:主要存放外接设备,如光盘、U盘等。在其中的设备不能直接使用,需要挂载(类似windows分配盘符)
etc:主要存放一些配置文件
home:除了root用户以外,其他用户的“家”目录
proc:(process) 存储linux运行时的进程
root:root用户“家”目录
sbin:(super binary) 存储一些可执行的二进制文件,但必须有super权限的用户才能执行
tmp:临时目录
usr:存放用户自己安装的软件
var:存放系统或程序的日志
mnt:外接设备挂载的目录
指令
指令格式:
#指令主体 [选项][操作对象]
基础指令
ls
列出当前工作目录所有的文件夹或文件
ls 路径
列出指定路径下的文件夹或文件
路径:相对路径:“./”【表示当前目录下】、“…/”【上一级目录】
绝对路径
选项
ls -l 【以详细列表的形式展示】
ls -a 【显示所有文件(包含隐藏文件)】
ls -h 【显示文件大小】
pwd
打印当前工作目录
#pwd
cd
切换当前工作目录
#cd 路径
#cd ~ 【切换到当前用户的家目录】
mkdir
创建目录
#mkdir 路径 【路径可以是文件夹名称,也可以是包含名称的一个完整路径】
选项
#mkdir -p 【如果上级目录不存在,会按目录层级自动创建目录】
#mkdir 路径1 路径2 路径3 【一次性创建多个目录】
touch
创建文件
#touch 路径 【路径可以是文件夹名称,也可以是包含名称的一个完整路径】
#touch 路径1 路径2 路径3 【一次性创建多个文件】
cp
复制文件夹/文件到指定位置
#cp 被复制的文档的路径 文档被复制到的路径
复制的过程中可以对文件/文件夹重命名,如果不是必须的,一般建议前后名称保持一致
选项
#cp -r 被复制的文件夹的路径 文件夹被复制到的路径
复制文件夹时,必须加上-r选项,表示递归
mv
移动文件夹/文件到指定位置|重命名文件/文件夹名称
#mv 被移动文档的路径 文档被移动到的路径
移动的时候,可以修改文件/文件夹的名称
rm
移除或删除文件/文件夹
#rm 要删除的文档路径
选项
#rm -f 路径 【强制删除,删除时,不提示是否删除】
#rm -r 路径 【递归删除文件夹】
#rm 路径1 路径2 路径3 【一次性删除多个文件】
输出重定向
#正常执行的命令 >/>> 文件的路径
>:覆盖输出
>>:追加输出
cat
1、直接打开文件
#cat 文件路径1 [文件路径2,文件路径3......]
2、合并文件
#cat 文件路径1 文件路径2 ...... >/>> 合并的文件路径
cat要与重定向>/>>配合使用,才能实现合并功能
进阶指令
df
查看磁盘空间
#df -h 【显示磁盘具体空间大小,Kb\Mb\Gb形式显示】
free
查看内存使用情况
选项
#free -h 【以适于人类可读方式显示内存信息】
-b:以bytes为单位来显示内存的信息
-k:以kb为单位来显示内存的信息
-m:以mb为单位来显示内存的信息
-g:以gb为单位来显示内存的信息
-l:显示高低内存的利用率
swap用于临时内存,当系统真实内存不够用的时候,可以临时使用磁盘空间充当内存
head
查看一个文件的前n行,如果不指定n,默认为10行
#head -n 文件路径
tail
1、查看一个文件的后n行,如果不指定n,默认为10行
#tail -n 文件路径
2、动态查看一个文件的变化
#tail -f 文件路径
动态显示的内容不能是用户自己手工增加的。一般用于查看系统日志
less
以较少的内容进行输出,按下辅助功能键查看更多
#less 文件路径
wc
统计文件内容信息(包含行数、单词数、字节数)
#wc -l 文件路径 【lines,统计行数】
#wc -w 文件路径 【words,统计单词数】
#wc -c 文件路径 【bytes,统计字节数】
date(重点)
1、操作日期时间(读取,设置)
#date 【xxxx年xx月xx日 星期x xx:xx:xx】
#date +%F (等价于#date "+%Y-%m-%d")【xxxx(年)-xx(月)-xx(日)】
#date "+%F%T" (等价于#date "+%Y-%m-%d %H:%M:%S")【xxxx(年)-xx(月)-xx(日) xx:xx:xx】
2、获取之前或之后某个时间(用于备份)
#date -d "+/- n day/month/year" "+%Y-%m-%d %H:%M:%S"
cal
操作日历
#cal (等价于#cal -1) 【显示当月日历】
#cal -3 【显示上一个月+本月+下一个月日历】
#cal -y 年份 【显示具体年份日历】
clear
清除终端中已存在的命令
#clear (等价于Ctrl+L)
管道(重点)
把前一个命令的结果当成后一个命令的输入
管道符 |
grep
主要用于过滤
高级指令
hostname
操作服务器主机名(读取、设置)
#hostname 【输出完整的主机名】
#hostname -f 【输出主机名中的FQDN(全限定域名)】
id
查看用户基本信息(用户id、用户组id、附加组id…),该指令如果不指定用户,默认为当前用户
#id [用户名]
whoami
显示当前登录的用户名
ps(重点)
查看服务器进程信息
-e:等价于“-A”,列出全部进程
-f:显示全部的列
UID:进程执行的用户id
PID:进程id
PPID:进程的父进程id。如果一个程序的父进程id找不到,该进程称为僵尸进程
C:Cpu占用率,百分比形式展示
STIME:进程启动时间
TTY:终端设备。如果显示“ ?”,表示该进程并不是由终端设备发起
TIME:进程的执行时间
CMD:进程名称或对应的路径
top
查看服务器进程占用资源
#top 【退出显示,按 q 键】
PID:进程id
USER:该进程对应的用户
PR:优先级
VIRT:虚拟内存
RES:常驻内存
SHR:共享内存【进程实际使用内存 = 常驻内存(RES)- 共享内存(SHR)】
S:运行状态(S表示睡眠,R表示运行)
%CPU:Cpu占用百分比
%MEM:内存占用百分比
TIME+:执行时间
COMMAND:进程的名称或路径
运行top时,快捷键
M:按照内存MEM从高到低排序
P:按照Cpu使用率从高到低排序
1:服务器有多个Cpu时,切换是否展示多个Cpu详细信息
du
查看目录的真实大小
-s:只显示汇总大小
-h:以高可读性的形式展示
find
查找文件
#find 路径 选项 选项值
#find -name 【按照文档名称搜索(支