一、目录结构
Bin:全称binary,含义是二进制。该目录中存储的都是一些二进制文件,文件都是可以被运行的。
Dev:该目录中主要存放的是外接设备,例如盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载(类似windows下的分配盘符)。
Etc:该目录主要存储一些配置文件。
Home:表示“家”,表示除了root用户以外其他用户的家目录,类似于windows下的User/用户目录。
Proc:表示进程,process,该目录中存储的是Linux运行时候的进程。
Root:该目录是root用户自己的家目录。
Sbin:全称super binary,该目录存储一些可以被执行的二进制文件,但是必须得有super权限的用户才能执行。
Tmp:表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。
Usr:存放的是用户自己安装的软件。类似于windows下的program files。
Var:存放的程序/系统的日志文件的目录。
Mnt:当外接设备需要挂载的时候,就需要挂载到mnt目录下。
二、基础命令
ls—- 显示文件/文件夹ls===== 列出当前工作目录下的所有文件/文件夹的名称ls 路径===== 列出指定路径下的所有文件/文件夹的名称ls 选项 路径====== 在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示-l:表示list,表示以详细列表的形式进行展示-a:表示显示所有的文件/文件夹(包含了隐藏文件/文件夹)-h:高可读性
pwd—- 显示当前工作目录cd—- 切换路径cd 路径===== 切换路径~:当前用户的家目录/:跟路径
mkdir—- 创建目录mkdir 路径===== 创建目录mkdir 路径1 路径2 路径3 …===== 一次性创建多个目录mkdir`` -p 路径===== 一次性创建多层不存在的目录
touch—- 创建文件touch 文件路径===== 创建文件touch 文件路径1 文件路径2 ...===== 一次性创建多个文件
cp—- 复制cp 文档src路径 文档dest路径===== 复制文件cp -r 文件夹src路径 文件夹dest路径===== 复制文件夹
mv—- 移动mv 文档src路径 文档dest路径===== 移动文件- 重命名,语法与移动一样
rm—- 删除rm 选项 被删除文档路径===== 删除文件-f:force,强制删除,不提示是否删除-r:表示递归 删除文件夹
rm 选项 文档1 文档2 ...===== 删除多个文件
cat—- 打开文件/合并文件cat 文件路径===== 打开文件cat 文件1 文件2 … 文件n > 合并之后的文件路径===== 合并多个文件
三、进阶指令
df—- 查看磁盘空间df -h=====-h:表示以可读性较高的形式展示大小
free—- 查看内存使用情况free -m=====-m:表示以mb为单位查看free -h=====-h:表示以可读性较高的形式展示大小
head—- 查看一个文件的前n行,如果不指定n,则默认显示前10行head -n 文件路径===== 【n表示数字】
tail—- 查看一个文件的末n行,如果n不指定默认显示后10行tail -n 文件路径===== 【n表示数字】tail -f 文件路径===== 查看一个文件的动态变化内容,一般用于查看系统的日志比较多
less—- 查看文件,以较少的内容进行输出less 文件路径
wc—- 统计文件内容信息(包含行数、单词数、字节数)wc -lwc 文件路径-l:表示lines,行数-w:表示words,单词数 依照空格来判断单词数量-c:表示bytes,字节数
date—- 操作时间日期(读取、设置)date===== 输出形式:Tue Aug 6 10:41:04 CST 2019date +%F等价于date “+%Y-%m-%d”===== 输出形式:2019-08-06date “+%F %T”等价于date “+%Y-%m-%d %H:%M:%S”===== 输出形式:2019-08-06 10:41:44date -d “-1 day” “+%Y-%m-%d %H:%M:%S”===== 获取之前或者之后的某个时间(备份)说明:
- 引号表示让“年月日与时分秒”成为一个不可分割的整体
- 符号的可选值:+ (之后) 或者 - (之前)
- 单位的可选值:day (天)、month (月份)、year (年)
| %F:表示完整的年月日 |
|---|
| %T:表示完整的时分秒 |
| %Y:表示四位年份 |
| %m:表示两位月份(带前导0) |
| %d:表示日期(带前导0) |
| %H:表示小时(带前导0) |
| %M:表示分钟(带前导0) |
| %S:表示秒数(带前导0) |
cal—- 操作日历cal等价于cal -1===== 直接输出当前月份的日历cal -3===== 表示输出上一个月+本月+下个月的日历cal -y 年份===== 表示输出某一个年份的日历
clear/ctrl+L—- 清屏管道 |—- 管道一般可以用于“过滤”,“特殊”,“扩展处理”- test:
ls | grep y管道查询出当前目录下包含“y”字母的文档名称 // grep指令:主要用于过滤ls | wc -l统计某个目录下的文档的总个数
- test:
四、高级指令
hostname—- 操作服务器的主机名(读取、设置)hostname===== 表示输出完整的主机名hostname -f===== 表示输出当前主机名中的FQDN(全限定域名)
id—- 查看用户的一些基本信息(包含用户id,用户组id,附加组id…)id===== 显示当前执行该命令的用户的基本信息id 用户名===== 显示指定用户的基本信息
whoami—- 显示当前登录的用户名whoami===== 显示当前登录的用户名,一般用于shell脚本,用于获取当前操作的用户名方便记录日志
ps—- 查看服务器的进程信息ps -ef===== 查看服务器的进程信息-e:等价于“-A”,表示列出全部的进程-f:显示全部的列(显示全字段)
top—- 动态显示服务器的进程占的资源- 在运行top的时候,可以按下方便的快捷键
q键退出M:表示将结果按照内存从高到低进行降序排列P:表示将结果按照CPU使用率从高到低进行降序排列1:当服务器拥有多个cpu的时候可以使用“1”快捷键来切换是否展示显示各个cpu的详细信息
- 在运行top的时候,可以按下方便的快捷键
du -sh—- 查看目录的真实大小du -sh 目录路径===== 查看目录的大小-s:summaries,只显示汇总的大小-h:表示以高可读性的形式进行显示
find—- 查找文件(其选项有55个之多)find 路径范围 选项 选项的值-name:按照文档名称进行搜索(支持模糊搜索)-type:按照文档的类型进行搜索- 文档类型:“-”表示文件(在使用find的时候需要用f来替换),“d”表示文件夹
service—- 用于控制一些软件的服务启动/停止/重启service 服务名 start/stop/restart- test:
ps -ef | grep httpd通过ps命令来检查httpd服务是否启动
- test:
kill—- 杀死进程kill 进程 PID===== 需要配合ps一起使用killall 进程名称
ifconfig—- 获取网卡信息Eth0表示Linux中的一个网卡,eth0是其名称Lo(loop,本地回还网卡,其ip地址一般都是127.0.0.1) 也是一个网卡名称inet addr就是网卡的ip地址
reboot—- 重新启动计算机reboot===== 重启reboot -w===== 模拟重启,但是不重启(只写关机与开机的日志信息)
shutdown—- 关机shutdown -h now “关机提示”shutdown -h 15:25 “关机提示”定时关机- 其他的关机命令:
init 0haltpoweroff
uptime—- 显示计算机的持续在线时间(计算机从开机到现在运行的时间)uname—- 获取计算机操作系统相关信息uname===== 获取操作系统的类型uname -r====== 查看当前系统的内核版本uname -a====== all,表示获取全部的系统信息(类型、全部主机名、内核版本、发布时间、开源计划)
netstat -tnlp—- 查看网络连接状态- netstat -tnlp
-t:表示只列出tcp协议的连接-n:表示将地址从字母组合转化成ip地址,将协议转化成端口号来显示-l:表示过滤出“state(状态)”列中其值为LISTEN(监听)的连接-p:表示显示发起连接的进程pid和进程名称
- netstat -tnlp
man—- 手册(包含了Linux中全部命令手册)
