Linux基础命令整理

01、基本命令格式

命令提示符
  	[root@localhost ~]#
其中:
	root			当前登陆用户
	localhost		主机名
	~				当前所在目录(家目录) 
					如果是root代表/root;
					如果是普通用户user1代表/home/user1
	#				超级用户提示符
	$				普通用户提示符	
---------------------------------------------------------------------------------
命令格式
命令 [选项] [参数]
注意: 个别命令的使用不遵循此格式
	 当有多个选项时,可以写在一起
	 简化选项与完整选项
	 -a 等于 --all
---------------------------------------------------------------------------------
查询目录中内容:ls
ls [选项] [文件或目录]
选项:
	-a	显示所有文件,包括隐藏文件
	-l	显示详细信息
	-h	人性化显示文件大小	     

02、文件处理命令

#查询目录所在位置:pwd
pwd
命令英文原意:print working directory
---------------------------------------------------------------------------------
#切换所在目录:cd
cd [目录]
	命令英文原意: change directory
简化操作:
cd ~   :切换到用户目录(家目录)
cd     :切换到用户目录
cd -   :切换到上一个访问目录
cd ..  :切换到上一级目录
---------------------------------------------------------------------------------
#创建文件:touch
touch 文件名
---------------------------------------------------------------------------------
#建立目录:mkdir
mkdir -p [目录名]
	-p:递归创建
	命令英文原意:make directories

mkdir 目录名:创建目录
mkdir -p xx/yy/zz:创建多级目录
---------------------------------------------------------------------------------
 #删除空目录:rmdir
 rmdir [目录名]
 命令英文原意:remove empty directory
 rmdir 目录:删除目录(目录为空时执行)
---------------------------------------------------------------------------------
#删除目录或文件:rm
rm -rf [文件或目录]
命令英文原意:remove
选项:
	-r	递归删除目录
	-f	强制
rm -r 目录:递归删除文件夹,带提示
rm -f 文件:删除文件
rm -rf 文件、文件夹:递归删除,无提示
###禁止:rm -rf /*	删除所有文件###
---------------------------------------------------------------------------------
#复制命令:cp
cp [选项] [原文件或目录] [目标目录]
命令英文原意:copy
选项:
	-r	复制目录
cp 源文件 备份文件:备份文件
cp -r 源目录 目标目录
---------------------------------------------------------------------------------
剪切或改名命令:mv
mv [原文件或目录] [目标目录]
命令英文原意:move
mv 原文件 目标文件目录 :剪切
mv 原文件 不存在的文件 :重命名
mv 原文件 文件夹/不存在的文件 :剪切重命名

03、文件搜索命令

命令搜索命令
搜索命令所在路径及帮助文档所在位置:whereis
whereis 命令名
选项:
	-b	只查找可执行文件
	-m	只查找帮助文件
---------------------------------------------------------------------------------
搜索命令所在路径及别名:which
which 命令名
---------------------------------------------------------------------------------
PATH环境变量:定义的是系统搜索命令的路径
相当于window下的path
echo $PATH  : 查看环境变量
文件搜索命令:find
find [搜索范围] [搜索条件]
示例:
	find / -name install.log
	#避免大范围搜索,会非常耗费系统资源
	#find是在系统当中搜索符合条件的文件名.如果需要匹配,
	#使用通配符匹配,通配符是完全匹配
	find /root -iname install.log   #按名字查询: 不区分大小写
	find /root -user root   #按照所有者搜索
	find /root -nouser  #查找没有所有者的文件
---------------------------------------------------------------------------------
linux中的通配符:
#	(查找多文件是需要加'' ,example:find /experiment/ -name '斗*')
	*	 匹配任意内容
	?	匹配任意一个字符
	[]	 匹配任意一个中括号内的字符	
---------------------------------------------------------------------------------
按时间查询:
find /var/log -mtime +10

#查找10天前修改的文件
-10		10天内修改文件
 10		10天当天修改的文件
+10		10天前修改的文件

atime	文件访问时间		access访问
ctime	改变文件属性时间   change 改变
mtime	修改文件时间		modify 修改
---------------------------------------------------------------------------------
按文件大小查询:
find  / -size 25k
#查找文件大小是25KB的文件,注意k是小写的

-25k	小于25KB的文件
 25k	等于25KB的文件
+25k	大于25KB的文件

find / -size 25M
#查找文件大小是25MB的文件,注意M是大写的
---------------------------------------------------------------------------------
find /etc -size +20k -a -size -50k
#查找/etc/目录下,大于20KB并且小于50KB的文件

-a		and		逻辑与,两个条件都满足
-o		or		逻辑或,两个条件满足一个即可

find /etc -size +20k -a -size -50k -exec ls -lh {} \;
#查找/etc/目录下,大于20KB并且小于50KB的文件,并显示详细信息
#-exec {} \;这是固定格式
字符串搜索命令:grep
grep [选项] 字符串 文件名
#在文件当中匹配符合条件的字符串
选项:
	-i	忽略大小写
	-v	排除指定字符串
find命令和grep命令的区别
find命令:在系统中搜索符合条件的文件名
grep命令:在文件中搜索符合条件的字符串

04、帮助命令

man
#查看命令的帮助
man 命令名

05、压缩与解压缩命令

.zip格式
先安装zip 软件
	yum install zip  
	yum install -y zip :不带确认的安装 
卸载: 
	yum remove zip
	yum remove unzip
--------------------------------------------------------------
zip 
#压缩文件
zip 压缩文件名.zip  原文件
zip -r 压缩文件名.zip 原文件夹(-r 递归,压缩文件夹(目录)时使用)
--------------------------------------------------------------
unzip
#解压缩.zip文件
unzip 压缩文件名
.gz格式
gzip
#压缩为.gz格式的压缩文件,原文件会消失
gzip  原文件

gzip -c 原文件 >压缩文件.gz(可以写需要保存到的目录,最后写压缩文件名)
#压缩为.gz格式,原文件保留
#-c的意思不是说需要保留文件,而是要把压缩的结果输出到控制台.
#>的意思是把结果输出到什么地方去.

gzip -r 目录
#-r 递归,遍历文件夹,压缩目录下的所有子文件,但是不压缩目录
gzip  -r 原文件夹 

gunzip
#解压缩文件
gunzip  压缩文名
#-r 递归,遍历文件夹,解压缩目录下的所有压缩子文件
gunzip -r 压缩文件目录
.tar.gz格式
其实.tar.gz格式是先打包为tar格式,在压缩为.gz格式
-------------------------------
打包命令:
tar -cvf 打包文件名.tar 原文件
选项:
	-c		打包
	-v		显示过程
	-f		指定打包后的文件名
-------------------------------
解打包命令:
tar -xvf 打包文件名
选项:
	-x		解打包
-------------------------------
tar -zcvf 压缩包名.tar.gz 原文件
选项:
	-z		压缩为.tar.gz格式
-------------------------------
tar -zxvf 压缩包名.tar.gz
选项:
	-x		解压缩.tar.gz格式
-------------------------------
#加上-C(大写)表示解压到指定的目录
tar -zxvf 压缩包名.tar.gz -C 指定目录
解压:
tar -zxvf learn.tar.gz  -C  目录
压缩:
tar -zcvf learn.tar.gz learn

06、关机和重启命令

shutdown [选项] 时间
选项:
	-c		取消前一个关机命令
	-h		关机
	-r		重启
#使用shutdown会在关机的时候帮我们保存数据
shutdown -h now		马上关机
---------------------------------------------------------------------------------
其他关机命令
#使用这三个命令不是特别安全,因为它们不会帮我们保存数据
halt
-n : 在关机前不做将记忆体资料写回硬盘的动作
-w : 并不会真的关机,只是把记录写到 /var/log/wtmp 档案里
-d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d) -f : 强迫关机,不呼叫 shutdown 这个指令
-i : 在关机之前先把所有网络相关的装置先停止
-p : 当关机的时候,顺便做关闭电源(poweroff)的动作

poweroff
关机,不保存数据

init 0	:关机
init 6	:重启
init 3	:切换字符界面
inti 5	:切换可视化界面
---------------------------------------------------------------------------------
重启命令
reboot
init 6
---------------------------------------------------------------------------------
退出登录命令
logout

07、其他命令

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

who
命令输出:
	用户名
	登录终端
	登录时间(登陆来源IP地址)
------------------------------------------------------------------------------------------------------------
查询当前登录和过去登录的用户信息:last
last
last命令默认时读取/var/log/wtmp文件数据
命令输出
	-用户名
	-登录终端
	-登录IP
	-登录时间
	-退出时间(在线时间)
---------------------------------------------------------------------------------
查看最后一次登录时间:lastlog
lastlog
lastlog命令默认时读取/var/log/lastlog文件内容
命令输出
	-用户名
	-登录终端
	-登录IP
	-最后一次登录时间
---------------------------------------------------------------------------------
磁盘使用情况:df
df
df		用于显示磁盘的使用情况
df -h	格式化显示输出磁盘使用情况
---------------------------------------------------------------------------------
查看任务进程:top
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 — 进程名称(命令名/命令行)
---------------------------------------------------------------------------------
查看内存占用:free
free
内存占用情况:
total			内存总数
used			已经使用的内存数
free			空闲的内存数
buffers Buffer	缓存内存数
cached Page		缓存内存数
---------------------------------------------------------------------------------
在显示器输出内容:echo
echo
常用
查看操作历史:history
history
用于显示执行过的历史命令记录
---------------------------------------------------------------------------------
文件查看命令:cat/tail
cat
整个文件的内容显示出来

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

08、vi编辑器

编辑器的三种模式
三种模式:
编辑模式(命令模式) :所有的机键动作都会理解为编辑整个文档的操作,默认为编辑模式
输入模式:大部分机键动作都会理解为输入的字符
末行模式:在末行模式,输入很多文件管理命令

模式之间的相互转换: 
编辑-->输入
	i:在光标所在字符前开始插入
	a:在光标所在字符后开始插入
	o:在光标所在行的下面另起一新行插入
	s:删除光标所在的字符并开始插入
	-----------------------------------------
	I:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入
	A:在光标所在你行的行尾开始插入
	O:在光标所在行的上面另起一行开始插入
	S:删除光标所在行并开始插入

输入模式-->编辑模式
	ESC(键盘左上方的按键)

编辑模式--->末行模式
: 
末行模式:-->编辑模式
	ESC(键盘左上方的按键)(一次或者多次)
---------------------------------------------------------------------------------
打开和关闭文件
打开文件
vi  /path/to/file

关闭文件
在末行模式下
wq: 保存退出
q!: 退出不保存
---------------------------------------------------------------------------------
移动光标
逐字符移动: 
	h:左移动
	l:右移动
	j:向下移动
	k:向上移动
行内跳转:
0		跳转到行首
$		跳转到行尾
行间跳转(末行模式)
num		跳转到某一行(末行模式)
G		跳转行最后一行(编辑模式)
gg		跳转到第一行(编辑模式)
---------------------------------------------------------------------------------
翻屏操作
在编辑模式下:
ctrl+f 向下翻一页
ctrl+b 向上翻一页
---------------------------------------------------------------------------------
删除命令
dd			删除光标所在行 (编辑模式)
3dd			从光标行开始删除3行(编辑模式)
: 1,4d 		删除第一行到第四行(末行模式)
---------------------------------------------------------------------------------
复制和粘贴命令
yy 	  复制光标所在行 (编辑模式)
2yy   从光标行开始复制2行(编辑模式)
p     粘贴命令
---------------------------------------------------------------------------------
查找和替换
文件的查找(末行,了解即可)
/parttern	从前往后查找
?parttern	从后往前查找
n			下一个匹配的字符串
N			上一个匹配的字符串
文本的替换(末行模式)
startNum,endNums/partter/string/gi
g	全局替换
i	忽略大小写
%s/f/F/gi
:.,$s/F/f/gi

:/关键字                 按n找下一个

set number        设置行号    
或者 
set nu

取消行号
set nu!

09、权限管理

用户管理
创建用户 :useradd [用户名]
创建用户并分配一个组:useradd -G [组名] [用户名] 
查看系统用户:cat /etc/passwd
1	用户名
2	用户的密码,用x替代
3	用户的uid,一般情况下root为0,1-499默认为系统账号,有的更大些到1000,500-65535为用户的可登录账号,有的系统从1000开始。
4	用户的gid,linux的用户都会有两个ID,一个是用户uid,一个是用户组id,在我们登录的时候,输入用户名和密码,其实会先到/etc/passwd查看是否有你输入的账号或者用户名,有的话将该账号与对应的UID和GID(在/etc/group中)读出来。然后读出主文件夹与shell的设置,然后再去检验密码是否正确,正确的话正常登录。
5	用户的账号说明解释
6	用户的家目录文件夹
7	用户使用的shell,如果换成/sbin/nologin/就是默认没有登录环境的。
---------------------------------------------------------------------------------
创建用户组 groupadd 组名
查看系统用户组:cat /etc/group
在/etc/group 中的每条记录分四个字段:
第一字段: 用户组名称
第二字段: 用户组密码
第三字段: GID
第四字段: 用户列表,每个用户之间用逗号隔开
---------------------------------------------------------------------------------
修改用户组属性
usermod -G [组名] [用户名]
----------------------------------------------------------------------------------
删除用户:
-f:强制删除用户,即使用户已登录 
-r:删除与用户相关的所有文件
---------------------------------------------------------------------------------
设置用户密码: passwd 用户名
查看密码:
cat /etc/shadow
注销 logout
切换用户: su 用户名
文件基本权限
chmod [选项] 模式 文件名
	选项
		-R		递归
	模式
		[guoa] [+-=] [rwx]
		[mode=421]
---------------------------------------------------------------------------------
#修改权限的方式(数字)
chmod [选项] 模式 文件名
		[mode=421]
权限的数字表示
r		4     r--     100
w		2     -w-    010
x		1     --x     001

111--->7  rwx
110--->6  rw-
100--->4  r--

0    ---
1    --x
2    -w-
3    -wx
4    r--
5    r-x
6    rw-
7    rwx
示例:
rwx  r-x  r-x
 7	  5	   5
chmod 755 文件

aa.txt    --->
拥有者: 可读可写    	 rw- 6
所述组: 可读写执行 		r-x 5
其他人: 可读可写可执行   rwx 7

chmod  657 aa.txt
---------------------------------------------------------------------------------
修改文件的所有者
chown 用户名 文件名
---------------------------------------------------------------------------------
修改文件所属组
chgrp 组名 文件名
sudo权限
root把本来只能超级用户执行的命令赋予普通用户执行.
su 切换账号 (swtich user的意思)
su 
sudo的操作对象是系统命令
visudo
#实际修改的是/etc/sudoers文件
#用户名  被管理主机的地址=(可使用的身份) 授权命令(绝对路径)
root ALL=(ALL) ALL
#%组名 被管理注解的地址=(可使用身份) 授权命令(绝对路径)
%wheel ALL=(ALL) ALL

需求:想让root用户将shutdown -h 10 定时关机命令赋予 yege用户
在配置文件中 加上
yege ALL = (ALL)  /usr/sbin/shutdown

切换到yege用户后
使用sudo命令执行shutdown , 如果直接执行 shutdown -h 10 发现还是没有权限
因此要输入 , 相当于借权限 
sudo shutdown -h 10

10、防火墙

centos7的防火墙程序服务名为:firewalld
防火墙配置命令:firewall-cmd
#防火墙帮助:
firewall-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

#开启防火墙
systemctl start firewalld
#关闭防火墙	
systemctl stop firewalld
#禁止开机自启
systemctl disable firewalld
#允许开机自启
systemctl enable firewalld
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值