linux 常用命令

这篇博客详细介绍了Linux系统中常用的命令,包括ls、cp、mv、pwd、rm、touch、tail、cat、less、vi、find、df、du、free、top、ping、tar等,涵盖了文件管理、目录操作、内存查看、系统监控等多个方面,是Linux运维人员的必备知识。

ls命令 – 显示指定工作目录下的内容及属性信息

ls 命令是Linux下最常用的指令之一。ls命令为英文单词 list 的缩写,正如英文单词 list 的意思,其功能是列出指定目录下的内容及其相关属性信息。

默认状态下,ls命令会列出当前目录的内容。而带上参数后,我们可以用ls做更多的事情。作为最基础同时又是使用频率很高的命令,我们很有必要搞清楚ls命令的用法,那么接下来一起看看吧!

cp命令 – 复制文件或目录

cp命令可以理解为英文单词copy的缩写,其功能为复制文件或目录。

cp命令可以将多个文件复制到一个具体的文件名或一个已经存在的目录下,也可以同时复制多个文件到一个指定的目录中。

复制目录

cp -R dir1 dir2/

复制test目录下的file.txt文件到test1目录下

cp /tmp/test/file.txt /tmp/test1

mv命令 – 移动或改名文件

mv命令是“move”单词的缩写,其功能大致和英文含义一样,可以移动文件或对其改名。

 这是一个使用频率超高的文件管理命令,我们需要特别留意它与复制的区别:mv与cp的结果不同。mv命令好像文件“搬家”,文件名称发生改变,但个数并未增加。而cp命令是对文件进行复制操作,文件个数是有增加的。

将文件file_1重命名为file_2

mv file_1 file_2

将文件file移动到目录dir中

mv file /dir

将目录dir1移动目录dir2中(前提是目录dir2已存在,若不存在则改名)

mv /dir1 /dir2

将目录dir1下的文件移动到当前目录下

mv /dir1/* .

pwd命令 – 显示当前路径

pwd命令是“print working directory”中每个单词的首字母缩写,其功能正如所示单词一样,为打印工作目录,即显示当前工作目录的绝对路径。

在实际工作中,我们经常会在不同目录之间进行切换,为了防止“迷路”,我们可以使用pwd命令快速查看当前我们所在的目录路径。

[work@40-17-20 user]$ pwd
/opt/soft/user

rm命令 – 移除文件或目录

rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。 rm也是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。

常用参数:

参数名解释
-f忽略不存在的文件,不会出现警告信息
-i删除前会询问用户是否操作
-r/R递归删除
-v显示指令的详细执行过程

参考实例

直接删除文件

rm test2.jpl

删除前逐一询问确认

rm -i test.txt

递归删除目录及目录下所有文件

rm -rf report

touch命令-创建文件

使用指令touch时,如果指定的文件不存在,则将创建一个新的 空白文件
使用指令touch时,如果指定的文件存在,则变更文件的日期属 性

touch file.txt

tail命令 – 查看文件尾部内容

tail用于显示文件尾部的内容,默认在屏幕上显示指定文件的末尾10行。最常用到的是参数 -f ,用于查阅正在改变的日志文件。

查看desc.txt的最后100行内容

tail -100 desc.txt

监视info日志的输出,配合grep一起使用

tail -f info.log | grep 'communication.socket.ManagerSocket' --color

cat命令 – 在终端设备上显示文件内容

cat命令就是用于查看内容较少的纯文本文件的

查看文件的内容

cat filename.txt

查看文件的内容,并显示行数编号

cat -n filename.txt

使用cat去查看日志

cat info.log | grep 'communication.socket.ManagerSocket'

less命令 – 查看日志文件内容

第1步:打开info.log日志文件

less info.log

第2步:Shift+g(输入G),跳转到日志文件末尾

第3步:"/+搜索内容"进行搜索

 第4步:输入N 向上查找,输入n向下查找

第5步:输入Q,推出

vi命令—编辑文本

vi是Linux系统上的第一个全屏模式编辑器,它用法简单,而且 所占空间不大,操作灵活无比。

进入vi 编辑器,在终端输入命令vi和想要编辑或者建立的文件名,如paper.txt,敲击回车,便可进入vi编辑器。

vi paper.txt

在vi编辑器中,按 按钮进入插入模式

 按Esc退出插入模式,按ctrl+c也可以实现退出插入模式的效果

退出vi编辑器插入模式之后,在命令方式下可有几种方法退出vi编辑器:

:wq 表示保存结束,退出vi编辑器。

:q!  不保存文件,强制退出 vi编辑器。

find命令 – 查找和搜索文件

find命令可以根据给定的路径和表达式查找的文件或目录。find参数选项很多,并且支持正则,功能强大。和管道结合使用可以实现复杂的功能,是系统管理者和普通用户必须掌握的命令。

find如不加任何参数,表示查找当前路径下的所有文件和目录,如果服务器负载比较高尽量不要在高峰期使用find命令,find命令模糊搜索还是比较消耗系统资源的。

常用参数:

参数名解释
-name按名称查找
-size按大小查找
-user按属性查找
-type按类型查找
-iname忽略大小写

参考实例

使用-name参数查看/etc目录下面所有的.conf结尾的配置文件

find /etc -name "*.conf"

使用-size参数查看/etc目录下面大于1M的文件

find /etc -size +1M

df命令 – 显示磁盘空间使用情况

df命令的英文全称即“Disk Free”,顾名思义功能是用于显示系统上可使用的磁盘空间。默认显示单位为KB,建议使用“df -h”的参数组合,根据磁盘容量自动变换合适的单位,更利于阅读。

日常普遍用该命令可以查看磁盘被占用了多少空间、还剩多少空间等信息。

常用参数

参数名解释
-h以容易阅读的方式显示
-B指定显示时的块大小。-B这个参数后面跟M或者G,可以M或者G的单位显示存储设备占用情况

[work@40-17-20 opt]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        40G  7.5G   30G  20% /
tmpfs            32G     0   32G   0% /dev/shm
/dev/vdc1       197G  125G   63G  67% /opt
[work@40-17-20 opt]$ df -BM
Filesystem     1M-blocks    Used Available Use% Mounted on
/dev/vda1         40316M   7597M    30672M  20% /
tmpfs             32214M      0M    32214M   0% /dev/shm
/dev/vdc1        201587M 127069M    64279M  67% /opt

du命令-显示磁盘中文件和文件夹的占用情况

du命令(disk usage)用来展示磁盘使用量的统计信息。dudf算是一对同门师兄弟,du侧重在文件夹和文件的磁盘占用方面,而df侧重在文件系统级别的磁盘占用方面

常用参数

参数名解释
-h以容易阅读的方式显示
-s仅显示总大小

常用命令

查看当前目录下所有子目录以及子目录中文件的大小

[work@40-17-20 report]$ du -h
196K    ./sbadmin2-1.0.7/bower_components/flot.tooltip/js
208K    ./sbadmin2-1.0.7/bower_components/flot.tooltip
492K    ./sbadmin2-1.0.7/bower_components/flot
44K     ./sbadmin2-1.0.7/bower_components/bootstrap/dist/js
124K    ./sbadmin2-1.0.7/bower_components/bootstrap/dist/css
224K    ./sbadmin2-1.0.7/bower_components/bootstrap/dist/fonts
396K    ./sbadmin2-1.0.7/bower_components/bootstrap/dist
412K    ./sbadmin2-1.0.7/bower_components/bootstrap
32K     ./sbadmin2-1.0.7/bower_components/flot-axislabels
12K     ./sbadmin2-1.0.7/bower_components/metisMenu/dist
24K     ./sbadmin2-1.0.7/bower_components/metisMenu
56K     ./sbadmin2-1.0.7/bower_components/font-awesome/css
104K    ./sbadmin2-1.0.7/bower_components/font-awesome/scss
604K    ./sbadmin2-1.0.7/bower_components/font-awesome/fonts
104K    ./sbadmin2-1.0.7/bower_components/font-awesome/less
884K    ./sbadmin2-1.0.7/bower_components/font-awesome
492K    ./sbadmin2-1.0.7/bower_components/jquery/dist
504K    ./sbadmin2-1.0.7/bower_components/jquery
2.5M    ./sbadmin2-1.0.7/bower_components
20K     ./sbadmin2-1.0.7/less
8.0K    ./sbadmin2-1.0.7/dist/js
12K     ./sbadmin2-1.0.7/dist/css
24K     ./sbadmin2-1.0.7/dist
2.6M    ./sbadmin2-1.0.7
444K    ./content/js
84K     ./content/css
104K    ./content/pages
636K    ./content
3.2M    .

统计当前目录占用空间大小

[work@40-17-20 user]$ du -sh
6.5M    .

查看当前目录下所有文件与目录的大小

[work@40-17-20 user]$ du -sh *
12K     index.html
3.2M    report
3.2M    report1
12K     test1
8.0K    test2.jpl
8.0K    test.jtl

free命令-查看系统实际使用内存的情况

[work@40-17-20 ~]$ free -g
             total       used       free     shared    buffers     cached
Mem:            62         59          3          0          0         36
-/+ buffers/cache:         21         40
Swap:            0          0          0
[work@40-17-20 ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:         64427      60659       3768          0        695      37462
-/+ buffers/cache:      22501      41926
Swap:            0          0          0

第1行Mem数据

  1. total:总计物理内存的大小。
  2. used:已使用的物理内存的大小。
  3. free:可用物理内存有多少。
  4. shared:多个进程共享的内存总额。
  5. buffers:写入磁盘内存缓冲区的大小(经常进行磁盘IO的效率比较低,所以先将要写入磁盘的文件进行一定数量的缓冲,等缓冲数据到达一定大小是一次性写进磁盘,提升效率)
  6. cached:从磁盘中读取内容的缓存大小(原理差不多)。

第2行-/+ buffers/cache:表示被程序实实在在吃掉的内存,比如上面中used内存是59G,但是真正被应用程序使用的内存才21G,其他被占据的内存主要用来cache数据了。

  • 实际内存占用:used-buffers-cached 即 total-free-buffers-cached
  • 实际可用内存:buffers+cached+free

参考资料

linux下使用free命令查看实际内存占用(可用内存) - 摩斯电码 - 博客园

linux中进程free,Linux 内存分析工具——free命令_游python的博客-CSDN博客

top命令-监控linux的系统状况

Linux 史上最全top命令及参数详解_一只可爱的委屈翁的博客-CSDN博客_top命令参数

Linux查看CPU信息(CPU个数、核心数、CPU使用率、运行位数)_西红柿天尊的博客-CSDN博客_linux查看cpu

ping命令

ping命令一般用于检测网络通与不通或者网络连接速度的命令,也叫时延,其 值越大,速度越慢

tar命令–打包

将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件

压缩 a.c文件为test.tar.gz

tar -czvf test.tar.gz a.c

解压文件

tar -xzvf test.tar.gz

查看进程

ps -ef|grep 'java'

杀死进程

kill -9 87654

参考资料:

Linux命令大全(常用的命令解析)_测试小白的晋级之路的博客-CSDN博客_linux命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值