Linux基本常用命令
常用系统工作命令
1.echo 命令
echo [字符串 | $变量]:在终端输出字符串或变量提取后的值。
2.date 命令
3.reboot 命令
4.poweroff 命令
5.wget 命令
参数 作用
-b 后台下载模式
-P 下载到指定目录
-t 最大尝试次数
-c 断点续传
-p 下载页面内所有资源,包括图片、视频等
-r 递归下载
6.ps 命令
ps aux
ps -ef | grep httpd
7.top 命令
用于动态地监视进程活动与系统负载等信息,其格式为 top, Linux 中的“强化版的Windows 任务管理器”
8.pidof 命令
用于查询某个指定服务进程的 PID 值,格式为“pidof [参数] [服务名称]”
9.kill 命令
用于终止某个指定 PID 的服务进程,格式为“kill [参数] [进程 PID]”
10.killall 命令
用于终止某个指定名称的服务所对应的全部进程,格式为:“killall [ 参数] [ 进程名称]”。
系统状态检测命令
1.ifconfig 命令
2.uname 命令
用于查看系统内核与系统版本等信息,格式为“uname [-a]”。
3.uptime 命令
用于查看系统的负载信息,格式为 uptime。
4.free 命令
用于显示当前系统中内存的使用量信息,格式为“free [-h]”。
5.who 命令
w
6.last 命令
用于查看所有系统的登录记录,格式为“last [参数]”。
last | sort -u
7.history 命令
8.sosreport 命令
用于收集系统配置及架构信息并输出诊断文档,格式为 sosreport。
工作目录切换命令
1.pwd 命令
2.cd 命令
[appuser@mytest001 ~]# cd /etc
同样的道理,可使用下述命令切换到/bin 目录中:
[appuser@mytest001 etc]# cd /bin
此时,要返回到上一次的目录(即/etc 目录),可执行如下命令:
[appuser@mytest001 bin]# cd -
[appuser@mytest001 etc]#
还可以通过下面的命令快速切换到用户的家目录:
[appuser@mytest001 etc]# cd ~
[appuser@mytest001 ~]#
3.ls 命令
[appuser@mytest001 ~]#ls -la
-a”参数看到全部文件(包括隐藏文件),使用“-l”参数可以查看文件的属性、大小等详细信息。
文本文件编辑命令
1.cat 命令
cat 命令用于查看纯文本文件(内容较少的),格式为“cat [选项] [文件]”。
Linux 系统中有多个用于查看文本内容的命令,每个命令都有自己的特点,比如这个 cat命令就是用于查看内容较少的纯文本文件的。
cat 这个命令也很好记,因为 cat 在英语中是“猫"的意思,小猫咪是不是给您一种娇小、可爱的感觉呢?
如果在查看文本内容时还想顺便显示行号的话,不妨在 cat 命令后面追加一个-n 参数。
2.more 命令
用于查看纯文本文件(内容较多的),格式为“more [选项]文件”。
3.head 命令
用于查看纯文本文档的前 N 行,格式为“head [选项] [文件]”。
如果只想查看文本中前 20 行的内容,该怎么办呢?head 命令可以派上用场了:
[appuser@mytest001 ~]# head -n 20 initial-setup-ks.cf
4.tail 命令
用于查看纯文本文档的后 N 行或持续刷新内容,格式为“tail [选项] [文件]”。
需要查看文本内容的最后 20 行,“tail -n 20 文件名”
当想要实时查看最新日志文件时,“tail -f 文件名”
5.tr 命令
用于替换文本文件中的字符,格式为“tr [原始字符] [目标字符]”。
在很多时候,我们想要快速地替换文本中的一些词汇
[appuser@mytest001 ~]# cat anaconda-ks.cfg | tr [a-z] [A-Z]
6.wc 命令
用于统计指定文本的行数、字数、字节数,格式为“wc [参数] 文本”。
[appuser@mytest001 ~]# wc -l /etc/passwd
[appuser@mytest001 ~]# 38 /etc/passwd
7.stat 命令
用于查看文件的具体存储信息和时间等信息,格式为“stat 文件名称”。
8.cut 命令
用于按“列”提取文本字符,格式为“cut [参数] 文本”。
一般而言,按基于“行”的方式来提取数据是比较简单的,只需要设置好要搜索的关键词即可。
但是,如果按列搜索,要使用-f 参数来设置列数,使用-d 参数来设置间隔符号。
9.diff 命令
接下来使用 diff --brief 命令显示比较后的结果,判断文件是否相同:
[appuser@mytest001 ~]# diff --brief diff_A.txt diff_B.txt
[appuser@mytest001 ~]# 文件 diff_A.txt and diff_B.txt 不同
最后使用带有-c 参数的 diff 命令来描述文件内容具体的不同:
[appuser@mytest001 ~]# diff -c diff_A.txt diff_B.txt
文件目录管理命令
1.touch 命令
用于创建空白文件或设置文件的时间,格式为“touch [选项] [文件]”。
参数 作用
-a 仅修改“读取时间”(atime)
-m 仅修改“修改时间”(mtime)
-d 同时修改 atime 与 mtime
2.mkdir 命令
用于创建空白的目录,格式为“mkdir [选项] 目录”。
mkdir命令还可以结合-p 参数来递归创建出具有嵌套叠层关系的文件目录。
3.cp 命令
用于复制文件或目录,格式为“cp [选项] 源文件 目标文件”。
-p 保留原始文件的属性
-d 若对象为“链接文件”,则保留该“链接文件”的属性
-r 递归持续复制(用于目录)
-i 若目标文件存在则询问是否覆盖
-a 相当于-pdr(p、d、r 为上述参数)
4.mv 命令
用于剪切文件或将文件重命名,格式为“mv [选项] 源文件 [目标路径|目标文件名]”。剪切操作不同于复制操作,因为它会默认把源文件删除掉,只保留剪切后的文件。如果在同一个目录中对一个文件进行剪切操作,其实也就是对其进行重命名。
5.rm 命令
用于删除文件或目录,格式为“rm [选项] 文件”。
在 Linux 系统中删除文件时,系统会默认向您询问是否要执行删除操作,如果不想看到确认信息,在 rm 命令后跟上-f 参数。要删除一个目录,加-r 参数才可以,否则删除不掉。
6.dd 命令
dd 命令能够让用户按照指定大小和个数的数据块来复制文件的内容。当然如果愿意的话,还可以在复制过程中转换其中的数据。Linux系统中有一个名为/dev/zero 的设备文件,这个文件不会占用系统存储空间,但却可以提供无穷无尽的数据,因此可以使用它作为 dd命令的输入文件,来生成一个指定大小的文件。
参数 作用
if 输入的文件名称
of 输出的文件名称
bs 设置每个“块”的大小
count 设置要复制“块”的个数
bs 块大小与 count 块个数的关系,解释,假设小明的饭量(即需求)是一个固定的值,用来盛饭的勺子的大小即 bs 块大小,而用勺子盛饭的次数即 count 块个数。小明要想吃饱(满足需求),则需要在勺子大小(bs块大小)与用勺子盛饭的次数(count 块个数)之间进行平衡。勺子越大,用勺子盛饭的次数就越少。有上可见,bs 与 count 都是用来指定容量的大小,只要能满足需求,可随意组合搭配方式。
7.file 命令
用于查看文件的类型,格式为“file 文件名”。
在 Linux 系统中,由于文本、目录、设备等所有这些一切都统称为文件,使用 file 命令来查看文件类型。
打包压缩与搜索命令
1.tar 命令
用于对文件进行打包压缩或解压。格式:tar [选项] [文件]。
常用参数:
-c:创建压缩文件
-x:解开压缩文件
-t:查看压缩包内有哪些文件
-z:用Gzip压缩或解压(压缩包后缀.tar.gz)
-j:用bzip2压缩或解压(压缩包后缀.tar.bz2)
-v:显示压缩或解压的过程
-f:目标文件名
-p:保留原始的权限与属性
-P:使用绝对路径来压缩
-C:指定解压到的目录
例如:
tar -czvf etc.tar.gz /etc #把/etc目录的所有内容用Gzip打包压缩并命名为etc.tar.gz
tar -xzvf etc.tar.gz -C /root/Desktop #把压缩包etc.tar.gz用Gzip解压到/root/etc目录中
2.grep 命令
用于在文本中执行关键词搜索,并显示匹配的结果,格式:grep [选项] [文件]。
常用参数:
-b:将可执行文件(binary)当作文本文件(text)来搜索
-c:仅显示找到的行数
-i:忽略大小写
-n:显示行号
-v:反向选择——仅列出没有“关键词”的行。
例如:
grep -nv /sbin/nologin /etc/passwd #从/etc/passwd文件中查找出不含/sbin/nologin的行,并显示行号。
3.find 命令
用于按照指定条件来查找文件,格式:find [查找路径] 寻找条件 操作。
常用参数:
-name:匹配名称
-perm:匹配权限(mode为完全匹配,-mode为包含即可)
-user:匹配所有者
-group:匹配所有组
-mtime -n +n:匹配修改内容的时间(-n指n天以内,+n指n天以前)
-atime -n +n:匹配访问文件的时间(-n指n天以内,+n指n天以前)
-ctime -n +n:匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
-nouser:匹配无所有者的文件
-nogroup:匹配无所有组的文件
-newer f1 !f2:匹配比文件f1新但比f2旧的文件
--type b/d/c/p/l/f:匹配文件类型(后面的字幕字母依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size:匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)
-prune:忽略某个目录
-exec …… {};:把find命令搜索到的结果交由紧随其后的命令作进一步处理(RHCSA考题!)
例如:
find /etc -name "host" #搜索/etc目录下所有以host开头的文件,为通配符
find / -perm -4000 #搜索根目录下所有包括SUID权限的所有文件
find / -user linuxprobe -exec cp -a {} /root/findresults/ ;
****在整个文件系统中找出所有归属于用户linuxprobe的文件并把其复制到/root/findresults目录下,{}代表find命令搜索出的所有文件,命令结尾必须是“;”。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!