目录结构
bin
:全称 binary,含义是二进制文件.该目录中存储的都是一切二进制文件,文件都是可以被运行的
dev
:该目录中主要存放的是外接设备.例如盘,其他的光盘等,在其中的外接设备中是不能直接被使用的,需要挂载(类似windows下的分配盘符)
etc
:该目录主要存储一些配置文件
home
:表示"家",创建的用户的家目录
proc
:全称process,表示进程,该目录中存储的是linux运行时的进程
root
:用户自己家的目录
sbin
:全称super binary,该目录也是存储一些可以被执行的二进制文件,但是必须有权限才能执行
tmp
:表示临时的,当系统运行时候产生的临时文件会在这个目录存着
usr
:存放的是用户自己安装的软件
var
:存放的程序/系统的日志文件的目录
mnt
:当外接设备需要挂载的时候,就需要挂载到这个目录下
基础指令
1. ls指令
用法1
#ls
含义:列出当前工作目录下的所有文件/文件夹的名称
用法2
#ls 路径
含义:列出指定路径下的所有文件/文件夹的名称 ./表示当前目录下 ../表示上一级目录下
用法3
#ls -l (和ll一样)
#ls -la
选项解释:
-l:表示list,表示以详细列表的形式进行展示
-a:表示显示所有的文件/文件夹(包含了隐藏文件/文件夹)
上述列表中的第一列表示文件类型,其中
"-"表示对应的文档类型是文件
"d"表示文档类型是文件夹
在linux中隐藏文档一般以.开头
2. pwd指令
用法:#pwd
打印当前工作目录
3. cd指令
作用:用于切换目录
用法:#cd 路径
4. mkdir指令
作用:创建目录
用法1:#mkdir 目录名
在当前目录下创建文件夹
用法2:#mkdir -p 目录名/目录名/目录名
能一次性创建多层不存在的目录
5.touch指令
作用:创建文件
用法: #touch 目录名
在当前目录下创建文件 空格隔开同时创建多个文件
6. cp指令
作用:复制
用法1:#cp 被复制的文件夹/文件的路径 文档被复制到的路径
复制过程中可以修改文件名
用法2:#cp -r 被复制的文件夹的路径 文件夹被复制到的路径
加了-r 能把整个文件夹包括文件夹里面的东西一起复制过来
7. mv指令
作用:移动文档到新的位置
用法:#mv 需要移动文档的路径 文档要移动到的路径
移动途中可以修改文件名
8. rm指令
作用:删除文档
用法1:#rm 文件名
删除文件 空格格开可以删除多个文件
用法2:#rm -f
表示强势删除
用法3:#rm -r
表示删除文件夹
用法4:#rm -rf
表示强势删除文件夹及文件夹中的所有文件
可以加*通配符使用
9. vi/vim指令
vi是自带的
vim没有可以用yum -y install vim*来安装
两个都是文本编辑器
10. 输出重定向
一般命令的输出都会显示在终端中,有些时候需要将一些命令执行的结果想要保存到文件中进行后续的分析/统计,则这个时候用到输出重定向技术
>
覆盖输出,会覆盖掉原先的文件内容
>>
最佳输出.不会覆盖原始文件的内容.会在原始内容末尾继续添加
用法:#ll > 文件名(如a.txt)
将ll显示的内容存储到a.txt文件中 可以没有a.txt文件会自动创建
11. cat指令
作用:直接打开一个文件的功能,还可以对文件进行合并
用法1:#cat 文件路径
用法2:#cat 文件路径1 文件路径2 > 合并之后的文件路径
(需要配合输出重定向使用)
进阶指令
1. df指令
作用: 查看磁盘空间
用法: #df -h
2. free指令
作用: 表示的是查看内存使用情况
用法: #free -m
3. head指令
作用: 查看一个文件的前n行 如果不指定n,默认显示前十行
用法: heam -n 文件名
n表示数字
4. tail指令
作用:查看一个文件的后n行,如果不指定n默认显示最后十行
用法1: tail -n 文件名
n表示数字
用法2: tail -f 文件名
可以通过-f来查看一个文件的动态变化 按q键退出即可
5. less指令
作用:查看文件,以较少的内容进行输出,按下辅助功能键查看更多(数字+回车,空格)
用法:#less 文件名
6. wc指令
作用:统计文件内容信息(包含行数,单词数,字节数)
用法: #wc -lwc 需要统计的文件路径
-l 表示lines 行数
-w 表示words 单词数 依照空格来判断单词数量
-c 表示bytes 字节数
7. date指令(重点)
作用:表示操作时间日期(读取,设置),
用法1:#date
查看日期时间
用法2:#date -%F
输出年月日
用法3:#date "+%F %T"
等价于"date "+%Y-%m-%d %H%M:%S""
输出日期时间
用法4:#date -d "-1 day" "+%F %T"
表示输出前一天的的时间 把day 改成year 表示年 month 表示月
把-号改成+号表示后一天的时间
8. cal指令
作用:直接输出当前月份的日历
用法1:#cal
等价#cal -1
用法2:#cal -3
表示输出上一个月+本月+下一个月的日历
用法3:#cal -y2018
表示输出2018年的日历
用法4:#cal -s
表示当前月份 一个星期的第一天从星期天开始
用法5:#cal -m
表示当前月份 一个星期的第一天从星期一开始
9. clear/ctrl -L 指令
#clear 或者按ctrl+l 该命令并不是真的清除了之前的信息,而是把之前的信息隐藏到了最上面 可以通过滚动条继续查看之前的信息
10. 管道(重要)
管道符: |
作用:管道一般可以用于"过滤","特殊","扩展处理"
过滤
用法:# ls /|grep y
过滤出带y字的 文件或文件夹 grep过滤
特殊用法
用法:#cat 路径 | less
扩展处理
用法:# ls / | wc-l
高级指令
1. hostname指令
作用:操作服务器的主机名(读取,设置)
用法1:#hostname
查看完整主机名
用法2:#hostname -f
查看当前主机名中的fqdn(权限定域名)
2. id指令
作用:查看一个用户的一些基本信息(包含用户id,用户组id,附加组id)
如果不指定用户则默认当前用户
用法1:#id
默认显示当前用户的基本信息
用法2:#id 用户名
显示指定及用户的基本信息
验证上诉信息是否正确?
验证用户信息:通过文件/etc/passwd
验证用户组信息:通过文件/etc/group
3. whoami 指令
作用:"我是谁?"显示当前登录用户名,一般用户shell脚本,用于获取当前操作的用户名方便记录日志
用法:#whoami
4. ps -ef 指令(重点)'
指令
:ps
作用
:主要是查看服务器的进程信息
选项含义
:
-e:等价于"-A",表示列出全部的进程
-f:显示全部的列(显示全字段)
执行结果列的含义
:
uid:执行该进程执行的用户
pid:进程的id
ppid:该进程的父级进程id,如果一个程序的进程找不到,该程序的进程称之为僵尸进程;
c:cpu的占用率,其形式是百分数;
stime:进行的启动时间;
tty:终端设备,发起该进程的设备识别符号,如果显示的?则表示该进程并不是由终端设备发起;
time:进程的执行时间;
cmd:进程对应的路径
寻找某个进程
用法:#ps-ef |grep 进程名称
5. top 指令(重点)
用法:#top
实时动态显示 退出命令:按下q键
运行之后按M按照内存从高到低排序
运行之后按P按照cpu从高到低排序
运行之后按1 把所有的cpu的详细信息都显示出来了
6. du-sh 指令
作用:查看目录的真实大小
选项含义:
-s:只显示汇总的大小
-h:表示以较高可读性的形式进行显示
用法:#du -sh 路径
7. find 指令
作用:用于查找文件
用法:#find 路径选项 选项 选项值
选项:
-name 按照文档名称进行搜索(支持模糊搜索)
-type:按照文旦类型进行搜索
文档类型:"-"表示文件在find的时候用f来替换,
d表示文件夹
8.systemctl 指令(重点)
作用:用于控制一些软件的服务启动/停止/重启
例如:需要启动本机安装的apache(网站服务器软件),其服务名 httpd
用法: #systemctl 服务名 start/sotp/restqrt
#启动apache
# service httpd start
9. kill指令
作用:杀死进程
用法1:#kill pid
或者
用法2:#killall 进程名称
10. ifconfig指令
作用:用于操作网卡相关指令
用法:#ifconfig
11. reboot 指令
作用:重启计算机
用法:#reboot
12. shutdown 指令
作用:关闭计算机 (慎用)
用法1:#shutdown -h now
正常关机(支持定时关机)
用法2:#halt
关闭内存
用法3:#init 0
重启
用法4:#shutdown -r now
13. uptime指令
作用:输出计算机的持续在线时间
用法:#uptime
14. uname 指令
作用:用于获取操作系统类型
用法1:#uname
用法2:#uname -a
15. netstat -thlp 指令
作用:查看网络连接状态
用法:#netstat -thlp
16. man 指令
作用:手册
用法:#man 指令名字