Linux常用命令
tar
linux打包工具,将一个或多个文件打包成一个文件,方便上传下载。
常用参数
| -c | 建立一个打包文件的参数指令 |
|---|---|
| -x | 解开一个打包文件的参数指令 |
| -t | 查看 tarfile 里面的文件 |
| -z | 使用gzip压缩 |
| -j | 使用bzip2压缩 |
| -v | 压缩过程中显示文件 |
| -f | 使用文件名,在f后要立即接文件名 |
注意:c/x/t 仅能存在一个!!!
实例
tar -cvf /home/log.tar /var/log //仅打包
tar -zcvf /home/log.tar.gz /var/log //打包后以gzip压缩
tar -zxvf log.tar.gz //解压
chmod
(change mode)
用户权限修改工具,可改变用户的权限。
文件权限
| r | 读取权限,可用数字4表示 |
|---|---|
| w | 写权限,可用数字2表示 |
| x | 执行权限,可用数字1表示 |
| - | 没有权限,可用数字0表示 |
drwxr-xr-x. 5 root root 60 Jul 6 11:05 home
第1位是文件类型:-代表文件,d代表目录
第2-4位是文件拥有者的权限
第5-7位是文件拥有者的权限
第8-10位是其它人的权限
参数说明
| -R | 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更) |
|---|---|
| + | 表示增加权限 |
| - | 表示取消权限 |
| = | 表示唯一设定权限 |
| u | 表示该文件的拥有者 |
| g | 表示与该文件的拥有者属于同一个群体(group)者 |
| o | 表示其他以外的人 |
| a | 表示这三者皆是 |
实例
chmod 777 /home //设置权限
chmod a+x /home //修改权限
chmod -R a+x /home //对该目录下的所有文件修改权限
mount
linux挂载工具,用于将设备挂载到linux系统中,如U盘、移动硬盘、光盘等。
参数说明
| -a | 将 /etc/fstab 中定义的所有档案系统挂上 |
|---|---|
| -o ro | 用唯读模式挂上 |
实例
mount /dev/hda1 /mnt //将 /dev/hda1 挂在 /mnt 之下
mount -o ro /dev/hda1 /mnt //将 /dev/hda1 用唯读模式挂在 /mnt 之下
umount
| -a | 卸除/etc/mtab中记录的所有文件系统 |
|---|---|
| -v | 执行时显示详细的信息 |
# umount -v /dev/sda1 通过设备名卸载
/dev/sda1 umounted
# umount -v /mnt/mymount/ 通过挂载点卸载
/tmp/diskboot.img umounted
fdisk
磁盘分区工具,可对磁盘进行在线分区及查看磁盘分区情况。
fdisk -l //查看磁盘分区情况
fdisk /dev/sdb //对磁盘进行在线分区
菜单操作说明
| m | 显示菜单和帮助信息 |
|---|---|
| a | 活动分区标记/引导分区 |
| d | 删除分区 |
| l | 显示分区类型 |
| n | 新建分区 |
| p | 显示分区信息 |
| q | 退出不保存 |
| t | 设置分区号 |
| v | 进行分区检查 |
| w | 保存修改 |
| x | 扩展应用,高级功能 |
df
查看磁盘空间的使用情况
| -h | --human-readable 使用人类可读的格式 |
|---|---|
| -i | --inodes 列出 inode 资讯,不列出已使用 block |
du
显示文件或目录所占用的磁盘空间
| -h | 输出文件系统分区使用的情况,例如:10KB,10MB,10GB等 |
|---|---|
| -s | 显示文件或整个目录的大小,默认单位是KB |
显示当前目录的大小
[root@localhost ~]# du -sh
28M .
显示某个目录的大小
[root@localhost ~]# du -sh /home
616M /home
显示某个文件的大小
[root@localhost home]# du -sh mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
615M mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
显示目录下所有文件的大小
[root@localhost home]# du -sh * //当前目录
16K mysql
615M mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
[root@localhost home]# du -sh /home/* //指定目录
16K /home/mysql
615M /home/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
查看个文件夹大小(--max-depth=后面跟包含的子文件夹深度)
[root@localhost /]# du -h --max-depth=1 /home/
16K /home/mysql
616M /home/
[root@localhost /]# du -h --max-depth=2 /home/
4.0K /home/mysql/.config
16K /home/mysql
616M /home/
[root@localhost /]# du -h --max-depth=3 /home/
4.0K /home/mysql/.config/autostart
4.0K /home/mysql/.config
16K /home/mysql
616M /home/
route
添加或删除静态路由。
用法:
route [选项] –net 网段 –mask 掩码 gw 网关
常用命令:
route add –net 192.168.2.0 -mask 255.255.255.0 gw 192.168.2.254
route add –net 192.168.2.0/24 gw 192.168.2.254
route del default gw 192.168.1.254
route del -net 0.0.0.0 -mask 0.0.0.0 gw 192.168.1.254
route //打印路由表
永久路由存放位置:/etc/rc.local
free
显示内存状态
| -b | 以Byte为单位显示内存使用情况 |
|---|---|
| -k | 以KB为单位显示内存使用情况 |
| -m | 以MB为单位显示内存使用情况 |
| -s | 持续观察内存使用状况 |
free -s 10 //每10s 执行一次命令
ps
显示当前进程 (process) 的状态
ps -ef //显示所有命令,连带命令行
ps -aux //显示所有包含其他使用者的行程
top
top - 17:11:25 up 6:16, 1 user, load average: 1.23, 0.92, 0.83
Tasks: 299 total, 2 running, 297 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 6.2 sy, 0.0 ni, 93.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8157196 total, 2038500 free, 4711736 used, 1406960 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 2985700 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
73549 root 20 0 162140 2220 1544 R 6.2 0.0 0:00.02 top
1 root 20 0 193536 6620 4124 S 0.0 0.1 0:02.10 systemd
第一行top:当前时间|系统运行时间|当前登陆用户数|系统负载【1分钟、5分钟、15分钟】
第二行Tasks:进程总数|正在运行的进程数|睡眠的进程数|停止的进程数|僵尸进程数
第三行Cpu(s):用户进程占用CPU百分比|内核进程占用CPU百分比|用户进程空间内改变过优先级的进程占用CPU百分比|空闲CPU百分比|等待输入输出的CPU时间百分比(重点关注)|CPU服务于硬中断所耗费的时间总额|CPU服务于软中断所耗费的时间总额|Steal Time
第四行Mem:物理内存总量|已使用内存的总量|空闲内存总量|用作内核缓存的内存量
第五行Swap:交换区总量|已使用交换区的总量|空闲交换区的总量|缓冲的交换区总量
进程信息
| PID | 进程id |
|---|---|
| USER | 进程所有者的用户名 |
| PR | 优先级 |
| NI | nice值,负值表示高优先级,正值表示低优先级 |
| VIRT | 进程使用的虚拟内存总量,单位kb,VIRT=SWAP+RES |
| RES | 进程使用的、未被换出的物理内存大小,单位kb,RES=CODE+DATA |
| SHR | 共享内存大小,单位kb |
| S | 进程状态[D=不可中断的睡眠状态|R=运行|S=睡眠|T=跟踪/停止|Z=僵尸进程] |
| %CPU | 上次更新到现在的CPU时间占用百分比 |
| %MEM | 进程使用的物理内存百分比 |
| TIME+ | 进程使用的CPU时间,单位1/100秒 |
| COMMAND | 命令名/命令行 |
netstat
显示网络状态
| -l或--listening | 显示监控中的服务器的Socket |
|---|---|
| -n或--numeric | 直接使用IP地址,而不通过域名服务器 |
| -t或--tcp | 显示TCP传输协议的连线状况 |
| -u或--udp | 显示UDP传输协议的连线状况 |
| -p或--programs | 显示正在使用Socket的程序识别码和程序名称 |
netstat -lntup
tail
文件里的最尾部的内容显示在屏幕上
| -f | 循环读取 |
|---|---|
| -c | <数目> 显示的字节数 |
| -n | <行数> 显示文件的尾部 n 行内容 |
tail 123.log //默认显示文件倒数10行的内容
tail +20 123.log //显示文件123.log倒数20行的内容
tail -f 123.log //不断刷新,查阅正在改变的日志文件

浙公网安备 33010602011771号