目录
一、基础命令
二、进阶指令
三、高阶指令
1、ls指令
含义 :ls ( list )
(1) 用法1 :#ls
含义 :列出当前工作目录下的所有文件/文件夹的名称
(2) 用法2 :#ls 路径
含义 :列出指定路径下的所有文件/文件夹的名称
(注 :关于路径(重要):
路径可以分成两种:相对路径、绝对路径。
相对路径 :相对首先得有一个参照物(一般就是当前的工作路径));
绝对路径 :绝对路径不需要参照物,直接从根“/”开始虚招对应路径。
相对路径的写法 :在相对路径中通常会用到 2 个符号"./"、【表示当前目录下】"../"【表示上一级目录下】
绝对路径:绝对路径不需要参照物,直接从跟"/"开始寻找对应路径。
(3) 用法3 :#ls 选项 路径
含义 :在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示。
常见的语法 :
#ls -l 路径
#ls -la 路径
选项解释 3A
-l :表示list,表示以详细列表的形式进行展示(其中“-”表示改行对应的文档类型为是文件,“d”表示文档类型为文件夹。)
-a :表示显示所有的文件/文件夹(包括了隐藏为文件/文件夹)(在Linux中隐藏文件一般都是以"."开头。)
(4) 用法4 :#ls -lh 路径
含义 :列出指定路径下的所有文件/文件夹的名称,以列表的形式并且在显示文档大小的时候以可读性较高的形式显示
2、pwd指令
用法 :#pwd (print working directory, 打印当前工作目录)
3、 cd命令
命令 :#cd (change direfctory,改变目录)
作用 :用于切换当前的工作目录的
语法 :#cd 路径
补充 :
在Linux 中有一个特殊的符号”~“,表示当前用户的家目录。
切换的方式 :#cd ~
4、 mkdir指令
指令 :mkdir (make directory, 创建目录)
语法1 :#mkdir 路径 【路径,可以是文件夹名称也可以是包含名称的一个完整路径】
【如果已经有了会报错】
注意 : 【ls 列出的结果颜色说明, 其中蓝色的名称表示文件夹, 黑色的表示文件, 绿色的其权限为拥有所有权限】
语法2 :#mkdir -p 路径
含义 :当一次性创建多层不存在的目录的时候,添加-p参数,否则会报错
语法3 : #mkdir 路径1 路径2 路径3【表示一次性创建多个目录】
5、 touch指令
指令 :touch
作用 :创建文件 【可以同时创建多个,同4、语法3】
语法 : #touch 文件路径 【路径可以是直接的文件名也可以是路径】
【注 :不能向不存在的文件里创建】
6、 cp指令
指令 :cp (cp, 复制)
作用 : 复制文件/文件夹到指定的位置
语法 :#cp 被复制的文档路径 文档被复制到的路径
【注 :Linux在复制过程中是可以重新对新位置的文件进行重命名的,但是如果不是必须的需要,则建议保持前后名称一致。】
【注意 :当使用cp命令进行文件夹复制操作的时候需要添加选项”-r“(-r表示递归复制),否则目录将被忽略】
7、 mv指令
指令 :mv (move, 移动,剪切)
作用 :移动文档到新的位置
语法 :#mv 需要移动的文档路径 需要保存的位置路径
【补充 :在Linux中重命名的命令也是mv, 语法和移动语法一样。】
8、rm命令
指令 :rm(remove, 移除、删除)
作用 :移除/删除文件
语法 :#rm 选项 需要移除的文档路径
选项: -f 【注 :如果在删除的时候不想频繁的确认,则可以在指令中添加选项”-f“ ,表示force(强制)。】
-r 【”-r“指删除目录的时候做递归删除】
-rf 【注 :删除一个目录的时候需要做递归删除,并且一般也不需要进行删除确认询问,所以移除目录的时候一般使用”-rf“选项】
【注 :在删除的时候如果不带选项,会提示是否删除,如果需要确认输入“y/yes”,否则输入“n/no” 按下回车。】
【可以删除多个】
【其中*称之为通配符,意思表示任意的字符,Linux*,则表示只有文件以Linux开头,后续字符则不管。】
9、vim命令
指令 :vim (vim是一款文本编辑器)
语法 :#vim 文件的路径
作用 :打开一个文件(可以不存在,也可以存在)
退出打开的文件 :在没有按下其他命令的时候,按下shift + 英文冒号, 输入q, 按下回车
10、输出重定向
一般命令的输出都会显示在终端中,有时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术
> :覆盖输出,会覆盖掉原先的文件内容
>> :追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加
语法 :#正常执行的指令 >/>> 文件的路径
注意 :文件可以不存在,不存在则新建
11、 cat指令
作用1 :cat有直接打开一个文件的功能
语法1 :#cat 文件的路径
作用2 :cat还可以对文件进行合并
语法2 :#cat 待合并的文件路径1 带合并的文件路径2 ..... 文件路径n > 合并之后的文件路径
1、df 指令
作用 :查看磁盘空间
语法 :#df -h -h表示以可读性较高的形式展示大小
2、free 指令
作用 :查看内存使用情况
语法 :#free -m -m表示以mb为单位查看 (-g是以gb为单位查看)
【Swap :用于临时内u内存,当系统真实内存不够用的时候可以临时使用磁盘空间来充当内存】
3、head 指令
作用 :查看一个文件前n行,如果不指定n,则默认显示前10行。
语法 :#head -n 文件路径
4、tail 指令
作用 1:查看一个文件的未n行,如果n不指定默认显示后10行
语法 :# tail -n 文件的路径 n同样表示数字
作用2 :可以通过tail指令来查看一个文件的动态变化【变化的内容不能是用户手动增加的】
语法 :# tail -f 文件的路径
【该命令一般用于查看系统的日志比较多】
5、less 指令
作用 :查看文件,以较少的内容进行输出,按下辅助功能键(数字 + 回车、空格键 + 上下方向键)查看更多
语法 :#less 需要查看的文件路径
退出时按q键即可
6、wc 指令
作用 :统计文件内容信息(包含行数 、单词数 、字节数)
语法 :# wc -lwc 需要统计的文件路径
-l :表示lines, 行数
-w :表示words,单词数
-c :表示butes,字节数
7、date 指令(重点)
作用 :表示操作时间日期(读取、设置),【读取用+】
语法1 :#date 输出形式 :_年_月_日 星期_ 时间
语法2 :#date +%F (等价于 #date “+%Y-%m-%d”) 输出形式 :年-月-日
语法3 :#date “+%F %T” (等价 :#date "+%Y-%m-%d %H:%M:%S") 引号表示让“年月日和时分秒” 成为一个不可分割的整体
语法4 :获取之前或者之后的某个时间 (备份)
#date -d "-/+1 year/month/day" "+%Y-%m-%d %H:%M:%S"
【 11%F :表示完整的年月日
%T :表示完整的时分秒
%Y :表示四位年份
%m :表示两位月份(带前导0)
%d :表示日期(带前导0)
%H :表示小时(带前导0)
%M :表示分钟(带前导0)
%S :表示秒数(带前导0)】
8、cal 指令
作用 :用来操作日历的
语法1 :#cal 等价于 #cal -1 直接输出当前月份的日历
语法2 :#cal -3 表示输出上一个月 +本月 +下一个月的日历
语法3 :#cal -y 年份 表示输出某一个年份的日历
9、clear/ctrl + L指令
作用 :清除终端中已经存在的命令和结果(信息)
语法 :clear 或者快捷键 : ctrl + L
【注意 :该命令并不是真的清除了之前的信息,而是把之前的信息隐藏到了最上面
通过滚动条继续查看以前的信息。】
10、管道(重要)
管道符 :|
作用 :管道一般可以用于“过滤”,“特殊”,“扩展处理”。
语法 :管道不能单独使用,必须要配合前面所讲的一些指令来一起使用,其作用注意是辅助作用。
过滤 :#ls / |grep 前缀
【命令说明 :(1)、以管道作为分界线,前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲的就是管道前面的输出就是后面指令的输入】
(2)、grep指令 :注意用于过滤
特殊用法案例 :通过管道的操作方法来实现less的等价效果(了解)
之前通过less查看一个文件,可以#less 路径
现在通过管道还可以这么:#cat 路径|less
扩展处理 :请使用学过的命令,来统计某个目录下的文档的总个数?
答 :#ls / | wc -l
1、host name 指令
作用 :操作服务器的主机名(读取、设置)
语法1 :#hostname 含义 :表示输出完整的主机名
语法2 :#hostname -f 含义 :表示输出当前主机名中的FQDN (全限定域名)
2、id 指令
作用 :查看一个用户的一些基本信息(包含用户id,用户组id,附加组id...),该指令如果不指定用户则默认当前用户
语法1:#id 默认显示当前执行该命令的用户的基本信息
语法2:#id 用户名 显示指定用户的基本信息
3、whoami 指令
作用 :"我是谁?" 显示当前登录的用于名,一般用于shell脚本, 用于获取当前操作的用户名方便记录日志
语法 :#whoami
4、ps -ef 指令(重点)
指令 :ps
作用:主要是查看服务器的进程信息
选项含义:
-e :等价于“-A”,表示列出全部的进程
-f :显示全部的列(显示全字段)
【列的含义 :
* UID:该进程执行的用户id
* PID:进程id;
* PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程
* C:Cpu的占用率,其形式是百分数;
STIME:进行的启动时间;
TTY:终端设备,发起该进程的设备识别符号,如果显示“ ?”则表示该进程并不是由终端设备发起;
TIME:进程的执行时间;
CMD:该进程的名称或对应的路径;】
5、top 指令(重点)
作用 :查看服务器的进程占的资源
语法 :
进入命令:#top (动态显示)
退出命令:按下q键
表头含义 :
PID:进程id
USER:该进程对应的用户;
PR:优先级;
VIRT:虚拟内存;
RES:常驻内存;
SHR:共享内存;
计算一个进程实际使用的内存 = 常驻内存(RES) - 共享内存(SHR)
*S:表示进行的状态(sleeping,其中S表示睡眠,R表示运行)
*%CPU:表示CPU的占用百分比;
*%MEM:表示内存的占用百分比;
TIME+:执行的时间;
*COMMAND:进程的名称或者路径;
在运行top的时候,可以按下方便快捷键:
M:表示将结果按照内存(MEM)从高到低进行降序排列;
P:表示将结果按照CPU使用率从高到低进行降序排列;
1:当服务器用有多个cpu的时候可以使用”1“快捷键来切换是否展示显示各个cpu的详细信息
6、du -sh 指令
作用 :查看目录的真实大小
语法 :#du -sh 目录路径
选项含义:
-s :summarries,只显示汇总的大小
-h :表示以高可读性的形式进行显示
7、find 指令
作用:用于查找文件(其参数有55个之多)
语法:#find 路径范围 选项 选项的值
选项:
-name:按照文档名称进行搜索(支持模糊搜索)
-type:按照文档的类型进行搜索
文档类型:“ - ” 表示文件(在使用find的时候需要f来替换),“ d ”表示文件夹
8、service 指令(重点)
作用:用于控制一些软件的服务启动/停止/重启
语法:#service 服务名 start/stop/restart
9、kill 指令(重点)
作用:表示杀死进程 (当遇到僵尸进程或者出于某些原因需要关闭进程的时候)
语法:#kill 进程PID (语法需要配合ps一起使用)
与kill命令作用相似但是比kill更好的杀死进程的命令:killall
语法 :#killall 进程名称
10、ifconfig 指令(重点)
作用:用于操作网卡的指令。
简单语法 : #ifconfig (获取网卡信息)
【注意:inet addr就是网卡的IP地址】
11、reboot 指令
作用:重新启动计算机
语法1:#reboot 重启
语法2:#reboot -w 模拟重启,但是不重启(只写关机与开机的日志信息)
12、shutdown 指令
作用:关机 (慎用)
语法1:#shutdown -h now 或者 # =shutdown -h 15;25 '关机提示“
13、uptime 指令
作用:输出计算机的持续在线时间(计算机从开机到现在运行的时间)
语法:#uptime
14、uname 指令
作用:获取计算机操作系统相关信息
语法1:#uname 获取操作系统的类型
语法2:#uname -a //all,表示获取全部的系统信息(类型、全部主机名、内核版本、发布时间、开源计划)
15、netstat-tnlp指令
作用:查看网络连接状态
语法:#netstat-tnlp(net:网络,stat:状态)
选项说明:
-t:表示只列出tcp协议的连接;
-n:表示将地址从字母组合转化成ip地址,将协议转化成端口号来显示
-l:表示过滤出"state(状态)"列中其值为LISTEN(监听)的连接;
-p:表示显示发起连接的进程的pid和进程名称
16、 man 指令
作用:manual,手册(包含了Linux中全部命令手册,英文)
语法:#man 命令 (退出按下q键)
技巧:
光速删除光标前/后的内容: ctrl+u / k