Linux

[Linux]2、Linux的常用命令

2022-08-06  本文已影响0人  史记_d5da

1、Linux的基本命令格式

1.1、常用命令
1.1.1、[root@M001 ~]#

root:当前登录的用户
@:分隔符号
M001:计算机名称
~:当前用户所在的路径
#:代表超级管理员 $:代表普通用户

1.1.2、ls / 查看根目录下文件
1.1.3、cd

1、cd ~:进入当前用户的家目录
2、cd -进入上次目录

1.1.4、rmdir [目录名] remove empty directory

没有以/开头的都是相对路径
以/开头的都是绝对路径,从根目录/开始查找

1.1.5、搜索命令

1、whereis命令 搜索命令所在的路径及帮助文档所在位置
-b只查找可执行文件
-m只查找帮助文档
2、which搜索文件所在的路径及别名

1.1.6、find [搜索范围] [搜索条件](搜索文件)

1、find / -name install.log 搜索文件名称 install.log
2、find /root -iname install.log 不区分大小写
3、find /root -user root 按照所有者搜索 find /root -nouser root
4、find /etc -size +20k -a -size -50k查找/etc/目录下,大于20KB并且小于50KB的文件
-a and 逻辑与,两个条件都满足
-o or 逻辑或,两个条件满足一个即可
5、find /etc -size +20k -a -size -50k -exec ls -lh {} \;
查找/etc/目录下,大于20KB并且小于50KB的文件,并显示详细信息
-exec {} \;这是固定格式
6、find . -size 25k
查找文件大小是25KB的文件,注意k是小写的.
-25k 小于25KB的文件
25k 等于25KB的文件
+25k 大于25KB的文件
7、find /var/log -mtime +10
查找10天前修改的文件
-10 10天内修改文件
10 10天当天修改的文件
+10 10天前修改的文件
atime 文件访问时间
ctime 改变文件属性时间
mtime 修改文件时间

1.1.7、grep [选项] 字符串 文件名(搜索字符串)

-i忽略大小写
-v排除指定字符串
-n显示行号

1.1.8、压缩与解压缩命令

1、zip
zip -r 压缩文件名 原文件
unzip 压缩文件名
2、gz
gzip 原文件 压缩为.gz格式的压缩文件,原文件会消失
gzip -c 原文件 > 压缩文件
压缩为.gz格式,原文件保留
-c的意思不是说需要保留文件,而是要把压缩的结果输出到控制台.
>的意思是把结果输出到什么地方去.
gzip -r 目录
压缩目录下的所有子文件,但是不能压缩目录
gzip -d 压缩文件,解压缩文件
gunzip 压缩文件
3、.bz2
bzip2 -k 源文件
参数-k压缩之后保留源文件,否则不保留源文件
bzip2 -d -k 压缩文件 或者 bunzip2 -k 压缩文件
参数-k解压缩后保留压缩文件,否则不保留
4、打包命令:
tar -cvf 打包文件名 源文件
-c 打包
-v 显示过程
-f 指定打包后的文件名
tar -xvf 打包文件名
-x 解打包
5、.tar.gz格式
tar -zcvf 压缩包名.tar.gz 源文件
-z 压缩为.tar.gz格式
tar -zxvf 压缩包名.tar.gz
-x 解压缩.tar.gz格式
加上-C表示解压到指定的目录
tar -zxvf 压缩包名.tar.gz -C 指定目录
6、.tar.bz2
tar -jcvf 压缩包名.tar.bz2 源文件
-c 压缩为.tar.bz2格式
tar -jxvf 压缩包名.tar.bz2
-x 解压缩为.tar.bz2格式

1.1.9、关机重启命令

1、shutdown 关机或重启命令
-c 取消前一个关机名,-h 关机,-r 重启
2、关机:haltpoweroffinit 0
3、重启:rebootinit 6
4、查看运行级别:runlevel
5、系统默认运行级别:cat /etc/inittab
6、退出登录:logout

1.2、其他命令
1.2.1、用户登录信息查看

1、w
命令输出:
USER 登陆的用户名
TTY 登陆终端
FROM 从哪个IP地址登陆
LOGIN@ 登陆时间
IDLE 用户闲置时间
JCPU指的是和该终端连接的所有进程占用时间.这个事件并不包括去后台作业的时间,但却包括当前正在运行的后台作业所占用时间;
PCPU 是指当前进程所占用的时间
WHAT当前正在运行的命令
2、who
命令输出:用户名、登陆终端、登陆时间(登陆来源IP地址)

1.2.2、last查询当前登陆和过去登陆的用户信息

last命令默认时读取/var/log/wtmp文件数据
命令输出:用户名、登陆终端、登陆IP、登陆时间、退出时间(在线时间)

1.2.3、查看最后一次登陆时间:lastlog

lastlog命令默认时读取/var/log/lastlog文件内容
命令输出:用户名、登陆终端、登陆IP、最后一次登陆时间

1.2.4、磁盘使用情况:df

df:用于显示磁盘的使用情况
df -h: 格式化显示输出磁盘使用情况

1.2.5、查看任务进程:top

任务进程
第一行:
10:01:23 — 当前系统时间
126 days, 14:29 — 系统已经运行了126天14小时29分钟(在这期间没有重启过)
2 users — 当前有2个用户登录系统
load average: 1.15, 1.42, 1.44 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。

第二行:
Tasks — 任务(进程),系统现在共有183个进程,其中处于运行中的有1个,182个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。

第三行:cpu状态
6.7% us — 用户空间占用CPU的百分比。
0.4% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
92.9% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比

第四行:内存状态
8306544k total — 物理内存总量(8GB)
7775876k used — 使用中的内存总量(7.7GB)
530668k free — 空闲内存总量(530M)
79236k buffers — 缓存的内存量 (79M)

第五行:swap交换分区
2031608k total — 交换区总量(2GB)
2556k used — 使用的交换区总量(2.5M)
2029052k free — 空闲交换区总量(2GB)
4231276k cached — 缓冲的交换区总量(4GB)

第五行以下:
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 — 进程名称(命令名/命令行)

1.2.6、查看内存占用:free

内存占用情况:
total:内存总数;
used:已经使用的内存数;
free:空闲的内存数;
buffers Buffer:缓存内存数;
cached Page:缓存内存数。

1.2.7、查看操作历史:history

用于显示执行过的历史命令记录

1.2.8、在显示器输出内容:echo
1.2.9、文件查看命令

1、cat
2、tail
默认在屏幕上显示指定文件的末尾10行
参数:
-f 显示文件最新追加的内容。
-行数 在屏幕上显示指定文件的末尾参数设置的行数

2、vi编辑器

2.1、编辑器的三种模式:

编辑模式(命令模式) :所有的机键动作都会理解为编辑整个文档的操作,默认为编辑模式
输入模式:大部分机键动作都会理解为输入的字符
末行模式:在末行模式,输入很多文件管理命令
1、编辑-->输入
i:在光标所在字符前开始插入
a:在光标所在字符后开始插入
o:在光标所在行的下面另起一新行插入
s:删除光标所在的字符并开始插入
I:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入
A:在光标所在你行的行尾开始插入
O:在光标所在行的上面另起一行开始插入
S:删除光标所在行并开始插入
2、输入模式-->编辑模式
ESC(键盘左上方的按键)
3、编辑模式--->末行模式:
末行模式:-->编辑模式
ESC(键盘左上方的按键)(一次或者多次)

2.2、打开文件

vi /path/to/file
wq: 保存退出、q!: 退出不保存

2.3、移动光标

1、逐字符移动:
h:左移动、l:右移动、j:向下移动、k:向上移动
2、行内跳转:
0:跳转到行首、$: 跳转到行尾
3、行间跳转;(末行模式)
num: 跳转到某一行(末行模式)
G: 跳转行最后一行(编辑模式)
gg: 跳转到第一行(编辑模式)

2.4、翻屏操作

在编辑模式下:ctrl+f 向下翻一页、ctrl+b 向上翻一页

2.5、删除操作

dd: 删除光标所在行 (编辑模式)
3dd:从光标行开始删除3行(编辑模式)
: 1,4d 删除第一行到第四行(末行模式)

2.6、复制粘贴

yy 复制光标所在行 (编辑模式)
2yy 从光标行开始复制2行(编辑模式)
p: 粘贴命令

2.7、查找替换

文件的查找
/parttern 从前往后、?parttern 从后往前
n: 下一个匹配的字符串、N: 上一个匹配的字符串
文本的替换(末行模式)
startNum,endNums/partter/string/gi
g:全局替换
i:忽略大小写
%s/f/F/gi
:.,$s/F/f/gi

3、权限管理

3.1、用户管理

1、useradd
创建用户 :useradd [用户名]
创建用户并分配一个组:useradd -G [组名] [用户名]
查看系统用户:cat /etc/passwd
2、groupadd
查看系统用户组:cat /etc/group
3、usermod
修改用户组属性
usermod -G [组名] [用户名]
4、userdel
删除用户:
-f:强制删除用户,即使用户已登录
-r:删除与用户相关的所有文件。
5、groupdel
6、passwd
/etc/shade

3.2、文件基本权限
3.2.1、基本权限的修改

1、文件权限解释

-rw-r--r--
// 文件类型(- 文件 d 目录 I 软链接文件)
// rw-          r--             r--
// u所有者     g所属组        o其他人
// r:4读 w:2写  x:1执行

2、chmod命令

chmod [选项] 模式 文件名
// -R 递归
// [guoa] [+-=] [rwx]
// [mode=421]

3、修改权限方式
chmod u+x 文件 给当前用户添加指定文件的x执行权限
chmod g+w,o+w 文件 给该文件用户组合其他人添加指定文件的w写的权限
chmod a=rwx 文件 给该文件的当前用户,当前组,其他人 添加rwx可读可写可执行的权限

3.2.2、其他权限命令

1、修改文件的所有者
chown 用户名 文件名
2、修改文件的所属组
chgrp 组名 文件名

3.2.3、sudo权限

root把本来只能超级用户执行的命令赋予普通用户执行.
sudo的操作对象是系统命令
visudo
实际修改的是/etc/sudoers文件

4、系统服务管理

1、进程查看:ps
ps -ef显示结果
UID 用户ID
PID 进程ID
PPID 父进程ID
C CPU占用率
STIME 开始时间
TTY 开始此进程的TTY----终端设备
TIME 此进程运行的总时间
CMD 命令名
2、杀死进程
kill -9 pid

5、网络管理

1、ifcfg-eth解释:
文件/etc/sysconfig/network-scripts/ifcfg-eth0/etc/sysconfig/network-script在这个目录下面,存放的是网络接口(网卡)的脚本文件(控制文件),ifcfg-eth0是默认的第一个网络接口,如果机器中有多网络接口,那么名字就将依此类推ifcfg-eth1,ifcfg-eth2,ifcfg-eth3......(这里面的文件是相当重要的,涉及到网络能否正常工作)。
TYPE=Ethernet #网卡类型
DEVICE=eth0 #网卡接口名称
ONBOOT=yes #系统启动时是否自动加载
BOOTPROTO=static #启用地址协议 --static:静态协议 --bootp协议 --dhcp协议
IPADDR=192.168.1.11 #网卡IP地址
NETMASK=255.255.255.0 #网卡网络地址
GATEWAY=192.168.1.1 #网卡网关地址
DNS1=8.8.8.8 #网卡DNS地址
BROADCAST=192.168.1.255 #网卡广播地址
查看ip:
ip addr
2、防火墙
centos7的防火墙程序服务名为:firewalld
防火墙配置命令:firewall-cmd
防火墙帮助:
fireweall-cmd --help
查看防火墙状态:
firewall-cmd --state
查看所有打开的端口:
firewall-cmd --zone=public --list-ports
开启端口:
firewall-cmd --zone=public --add-port=端口号/tcp --permanent--permanent参数为永久生效,不加则重启后失效)
更新防火墙规则:
firewall-cmd --reload
删除端口:
firewall-cmd --zone=public --remove-port=端口号/tcp --permanent

上一篇下一篇

猜你喜欢

热点阅读