导图社区 Linux基础命令
Linux基础命令是否全记住了?在Linux基础命令思维导图中可以帮您全面回顾一下。从基础命令开始,到进阶命令,再到高级命令等。
编辑于2021-06-22 17:39:47Linux命令
基础命令
命令格式
#命令 [-选项1…N] [对象]
ls命令
#ls;列出文件、文件夹的名称
#ls 路径 【路径包括:相对路径、绝对路径】;特殊的符号:/表示根目录;./表示当前目录;../表示上一层目录
#ls -l 路径;表示以列表形式显示指定路径下文件、文件夹的名称;
#ls -la 路径;表示以列表形式显示指定路径下所有文件、文件夹的名称;
#ls -lh 路径;表示以列表形式(容量)用可读性较强的形式显示指定路径下文件、文件夹的名称;
pwd命令
print working directory,打印当前工作目录
#pwd
cd命令
#cd 路径 ;(change directory,改变目录)切换当前工作目录;特殊的符号:"~"表示当前用户的家目录,#cd ~
mkdir命令
创建目录
#mkdir 路径
#mkdir -p 路径;当一次性多层不存在的目录的时候,添加-p参数,否则会报错;
#mkdir 路径1 路径2 路径3…;表示一次性创建多个目录
touch命令
创建文件
#touch 文件路径 【路径可以是直接的文件名也可以说是路径】
cp命令
copy复制;作用复制文件/文件夹到指定的位置
#cp 被复制的文档路径 文档被复制到的路径
注意:1、Linux在复制过程中可以重新对新位置的文件进行重命名,但如非必需建议保持前后名称一致;2、当cp命令进行文件夹复制操作是需要添加选项”-r“【-r表示递归复制】,否则目录将被忽略
mv命令
move,移动,剪切;作用移动文档到新的位置
#mv 需要移动的文档路径 需要保存的位置路径
在Linux中重命名的命令也是mv,语法和移动语法一样
rm命令
remove,移除、删除;作用移除/删除文档
#rm [选项] 需要移除的文档路径
如果在删除的时候不想频繁的确认,则可以在指令中加入“-f”选项,表示force(强制);“-r”表示递归,删除目录时可以使用;删除共有特性的多个文档时,可以使用“*”通配符
vim命令
vim是一款文本编织器
#vim 文件的路径 作用打开一个文件(文件可以存在,也可以不存在)
: q 退出
输出重定向
一般命令的输出都会显示在终端中,如需将一些命令的执行结果保存文件中进行后续的分析/统计,则需要使用的输出重定向技术;
#正常执行的指令 >/>> 文件路径
> 覆盖输出,会覆盖原先的文件内容
>> 追加输出,不会覆盖原先的文件内容,会在原始内容尾继续输出内容
cat命令
作用1:cat有直接打开文件的功能;语法1:#cat 文件的路径
作用2:cat还可以对文件进行合并;语法2:#cat 待合并的文件路径1 待合并的文件路径2 ... 文件路径n > 合并后的文件路径
进阶命令
df命令
作用:查看磁盘空间
语法:#df -h -h表示以可读性较高的形式展示的大小
free命令
作用:查看内存使用情况
语法:#free -m -m表示以mb为单位进行查看
注意:swap:用于临时内存,当系统真实内存不够用的时候可以临时使用磁盘空间来充当内存;
head命令
作用:查看一个文件的前n行,如果不指定n,则默认显示前10行;
语法:#head -n 文件路径 【n表示数字】
tail命令
作用1:查看一个文件的末n行,如果不指定n,则默认显示末10行;
语法1:#tail -n 文件路径 【n表示数字】
作用2:通过tail命令查看一个文件的动态变化(变化内容不能是用户手动添加的内容);该命令一般用于查看系统日志比较多;退出命令,键入q键即可;
语法2:#tail -f 文件路径
less命令
作用:查看文件,以较少的内容进行输出,按下辅助功能键(数字+回车、空格键、上下键)查看更多;
语法:#less 需要查看的文件路径
wc命令
作用:统计文件内容信息(包括行数、单词数、字节数)
语法:#wc [选项(-lwc)] 需要统计的文件路径
-l:表示lines,行数(常用);-w:表示words,单词数(依照空格来判断单词数量);-c:表示bytes,字节数;
date命令
作用:表示操作时间日期(读取、设置)
语法1:#date 输出形式:2021年06月21日 星期一 15:54:34
语法2:#date +%F (等价于#date "%Y-%m-%d")输出形式:2021-06-21
语法3:#date "+%F %T"(等价于#date "%Y-%m-%d %H:%M:%S") 引号表示让"年月日与时分"成为一个不可分割的整体,输出形式:2021-06-21 15:54:34
语法4:#date -d "-/+ n day/month/year/" "%Y-%m-%d %H:%M:%S" 常用于获取之前或者之后的某个时间(备份);-(之前),+(之后);n(数字1,2…)
cal命令
作用:用来操作日历;
语法1:#cal (等价于#cal -1)直接输出当前月份的日历
语法2;#cal -3 表示输出上一月、当前月、下一月的日历
语法3:#cal -y 年份 表示输出指定年份的年日历
clear/ctrl+L指令
作用:清除终端中已经存在的命令和结果(信息);该命令并不是清除了之前的信息,而是把之前的信息隐藏到了最上面,可以通过滚动条查看之前的信息(与Windows命令行的cls不同,它是真正的清除);
语法:#clear 或者快捷键:Ctrl+L
管道(重要)
管道符:|
作用:管道一般用于过滤,特殊,扩展处理;
语法:管道不能单独使用,必须需要配合前面说讲的一些指令一起使用,其作用主要是辅助作用。
1、过滤案例(100%使用率):通过管道查询出根目录下包含“y”字母的目录(命令:#ls /|grep y )( 命令说明:1、以管道作为分界线,前面的命令有个输出,后面需要先输入,然后在过滤,最后再输出;通俗的讲就是管道前面的输出就是后面指令的输入;2、grep指令:主要用于过滤)(其它案例:通过管道查询进程中包含“httpd”字母的进程 #ps -ef | grep httpd )
2、特殊用法案例:通过管道的操作方法来实现less的等价效果(了解即可);#cat 路径 | less (等价于#less 路径)
3、扩展处理:统计某个目录下的文档的总数量(命令:#ls / | wc -l)
高级命令
hostname命令
作用:操作服务器的主机名(读取、设置(临时设置重启后会清除还原的))
语法1:#hostname 含义:表示输出完整的主机名
语法2:#hostname -f 含义:表示输出当前主机名中的FQDN(全限定域名)
id命令
作用:查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…),该命令如果不指定用户则默认当前用户;
语法1:#id 默认显示当前执行该命令的用户的基本信息
语法2:#id 用户名 显示指定用户的基本信息
验证上述信息是否正确的方法:验证用户信息(通过文件/etc/passwd;命令如:#cat /etc/passwd );验证用户组信息(通过文件/etc/group;命令如:#cat /etc/group)
whoami命令
作用:我是谁,显示当前登录的用户名,一般用于shell脚本,用于获取当前操作用户名方便记录日志;
语法:#whoami
ps -ef命令(重点)
作用:用于查看服务器的进程信息
选项:-e 等价于“-A”,表示列出全部的进程;-f 显示全部的列/显示全字段
列的含义:UID:该进程执行的用户ID;PID:进程ID;PPID:该进程的父级进程ID(如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程);C:表示CPU的占用率,其形式是百分比;STIME:表示该进程的启动时间;TTY:终端设备,发起该进程的设备识别符号,如果显示"?"则表示该进程并不是由终端设备发起;TIME:进程的执行时间;CMD:该进程的名称或者对应的路径;
100%使用率的案例:在ps结果中过滤出想要查看的进程状态命令:#ps -ef|grep 进程名称
top命令(重点)
作用:查看服务器进程的资源占用率
语法:#top (动态显示;退出命令:按下q键;M键:按内存占用降序排列;P键:按CPU使用率降序排列;1键:当服务器拥有多个CPU时,可以切换多个CPU使用率单个独立/合成显示使用情况)
表头含义:PID:进程id;USER:该进程对应的用户;PR:优先级;VIRT:虚拟内存;RES:常驻内存;SHR:共享内存;(计算:一个进程实际使用的内存=常驻内存【RES】-共享内存【SHR】);S:表示进程的状态(sleeping,其中S表示睡眠,R表示运行);%CPU:表示CPU的占用百分比;%MEM:表示内存的占用百分比;TIME+:执行的时间;COMMAND:进程的名称或者路径;
du -sh命令
作用:查看目录的真实大小
语法:#du -sh 目录路径
选项:-s:summaries,只显示汇总的大小;-h:表示以较高可读性的形式进行显示;
find命令
作用:用于查找文件(参数有55个)
语法:#find 路径范围 选项[-name -type] 选项的值
选项:-name:按照文档名称进行搜索(支持模糊搜索);-type:按照文档的类型进行搜索【文档类型:“-”表示文件(在使用find的时候需要用f来替换),“d”表示文件夹】
子主题
例子:1、查找etc目录下conf后缀文件命令:#find /etc -name *.conf 2、查找etc目录下conf后缀文件统计数量命令:#find /etc -name *.conf | wc -l 3、查找/etc/sane.d/下文件命令:#find /etc -type f 4、查找/etc/下文件夹命令:#find /etc/ -type d
service命令(重点)
作用:用于控制一些软件的服务启动/停止/重启
语法:#service 服务名 start/stop/restart
例子:启动Apache(网站服务器软件,服务名httpd;命令:#service httpd start ;通过ps命令检查服务是否已启动;命令:#ps -ef|grep httpd
kill命令(重点)
作用:杀死进程(当遇到僵尸进程或者出于某些原因需要关闭进程的时候);
语法:#kill 进程PID (语法需要配合ps使用)
例子:kill掉Apache的进程;方法:第一步ps命令:#ps -ef | grep httpd 查找出PID号29867;第二步使用kill命令:#kill 29867
与kill命令作用相似,但是比kill更好用的杀死进程的命令:killall
语法:#killall 进程名称
例子:杀掉Apache的进程;命令:#killall httpd 检验方法:#ps -ef | grep httpd
ifconfig命令(重点)
作用:用于操作网卡相关的指令
语法:#ifconfig
reboot命令
作用:重新启动计算机
语法1:#reboot 表示重启计算机
语法2:#reboot -w 表示模拟重启,但是不重启,系统只写关机与开机的日志记录
shutdown命令
作用:关机 (慎用!!!)
语法1:#shutdown -h now "关机提示!" 或者计划时间关机 #shutdown -h 15:25 "关机提示!" 取消计划关机方法:centos7.x之前的版本,按ctrl+c取消关机;centos7.x(含)之后的版本,#shutdown -c ;
其它关机命令:#init 0 #halt #poweroff
uptime命令
作用:输出计算机的持续在线时间(计算机从开机到现在运行的时间)
语法:#uptime
uname命令
作用:获取计算机操作系统相关信息
语法1:#uname 获取操作系统的类型
语法2:#uname -a 获取操作系统全部的信息(类型、全部主机名、内核版本、发布时间、开源计划)
netstat -tnlp命令
作用:查看网络连接状态
语法:#netstat -tnlp
选项:-t:表示只列出tcp协议的链接;-n:表示将地址从字母组合转化成IP地址,将协议转化成端口号来显示;-l:表示过滤出“state(状态)”列中其值为LISTEN(监听)的链接;-p:表示显示发起链接的进程PID和进程名称
man命令
作用:manual,手册(包含Linux中全部命令手册,英语)
语法:#man 命令 (退出按q键)
练习题
1、如何通过命令行重启Linux操作系统? #reboot
2、如何在命令行中快速删除光标前/后的内容? 前:Ctrl+u 后:Ctrl+k
3、如何删除/tmp下所有A开头的文件? #rm -f /tmp/A*
4、系统重要文件需要备份,如何把/etc/passwd备份到/tmp目录下? #cp /etc/passwd /tmp/
5、如何查看系统最后创建的3个用户? #tail -3 /etc/passwd
6、什么命令可以统计当前系统中一共有多少账户? #wc -l /etc/passwd 或者#cat /etc/passwd|wc -l
7、如何创建/tem/test.conf文件? #touch /tem/test.conf
8、如何通过vim编辑打开/tem/test.conf文件? #vim /tem/test.conf
9、如何查看/etc/passwd的头3行和尾3行?头3行:#head -3 /etc/passwd 尾3行:#tail -3 /etc/passwd
10、如何一次性创造目录/test/1/2/3/4? #mkdir /test/1/2/3/4
11、如何最快的返回当前用户的家目录?#cd ~
12、如何查看/etc所占磁盘空间?#du -sh /etc/
13、如何删除/tmp下所有的文件?#rm -rf /tmp/*
14、尝试启动Apache的服务,并检查是否启动成功?#service httpd start #ps -ef | gred httpd
15、使用命令杀死Apache进程?#killall httpd
杂锦
常用网站
man.linuxde.net