linux常用基础命令

systemctl stop firewalld – 关闭防火墙

ip addr – 查看ip
ifconfig – 查看ip

rpm -q centos-release – 查看系统版本
strings /lib64/libc.so.6 | grep GLIBC – 查看系统文件

fuser -n tcp 80 – 查看端口被哪个pid使用
free -m – 查看内存空间
df -hl – 查看磁盘空间
du -h * – 查看具体目录的占用情况

1.文件和文件夹的创建和删除

-- 文件夹 --

-p 	-- 创建多级文件夹

mkdir /home/a	-- 在home文件夹中创建a文件夹
mkdir	/home/a/b 	-- 在home文件夹中创建a文件夹,又在a中创建b文件夹

rmdir	-- 删除空目录(目录不为空,无法删除)
rmdir	/home/a/b	-- 删除home下的a下的b(空目录)
-r	-- 递归删除
-f 	-- 强制删除无提示
rm -rf 删除文件夹  	-- 强制删除不管文件夹是否为空
rm -rf /home/a  -- 删除a文件夹,不论是否为空

mv 文件夹 目标文件夹	-- 修改文件夹的名字
mv a b  -- 修改a文件夹的名字为b
mv a.txt b.txt 	-- 把a.txt修改为b.txt
mv a.txt b	-- 把a.txt移动到b文件夹

-- 文件 -- 

touch a.txt  	-- 创建a.txt空文件
touch a.txt b.txt -- 同时创建a.txt 和b.txt 
mv a.txt b.txt -- 修改a.txt的名字为b.txt 

-- 复制 --

cp 【选项】 source dest

cp -r a/ b/ 把a目录拷贝到b目录(有重名文件会提示是否覆盖)y/n
\cp -r a/ b/ 把a目录拷贝到b目录(强制覆盖无提示)

2.vi编辑篇

vi 文件  -- 打开文件  
vim 文件   -- 编辑文件

实例:
vi a.txt 打开a.txt文件
vim a.txt 直接编辑a.txt文件

命令模式	-- vi启动后的默认模式
输入模式	-- a,i,o等指令,编辑器最后一行会显示 “--INSERT--”
末行模式	-- 在命令模式中输入":"即可进入

i	-- 切换到输入模式  (i,o,a) 
			a	-- 当前光标后插入
			A	-- 当前光标所在行末尾(行尾)插入
			i	-- 当前光标前插入
			I	-- 当前光标所在行开头(行头)插入
			o	-- 当前光标后插入一个新行
			O	-- 当前光标前插入一个新行
q	-- 退出
w	-- 保存
home	-- 光标到行首
end		-- 光标到行尾
pageup pagedown	-- 上下翻页
delete	-- 删除光标位置的字符
esc	-- 退出输入模式,切换到末行模式
wq	-- 一般编辑完后使用wq保存并退出编辑模式

-- 删除 --

x  	-- 删除当前光标所在处的字符
dd 	-- 删除光标所在行
dw	-- 删除当前字符到单词尾(包括空格)的所有字符

实例:
#3x		-- 删除光标处向右的三个字符
#dd		-- 从当前行开始向下删除三行文本

-- 撤销 --

u	-- 取消最近一次的操作,可使用多次回复原有操作
U	-- 取消所有的操作
Ctrl+R	回复对使用u命令的操作

-- 复制 --

yy	-- 复制当前整行的内容到vi缓冲器
yw	-- 复制当前光标所在位置到单词尾字符到vi缓冲器,相当于只复制了一个单词
y$	-- 复制光标所在位置到行尾内容到缓冲区
y^	-- 复制光标所在位置到行首内容到缓冲区
yG 	-- 复制光标所在行到文件末尾的内存到缓冲区
:30,50y	-- 复制30-50行的内容

实例:
#5yy	-- 复制5行
#2yw	-- 复制两个单词
#m,ny	-- 复制第m行到底n行的内容(末行模式中使用)

-- 粘贴--
p:将复制的内容粘贴到当前光标的下一行。例如,要将复制的内容粘贴到下一行,可以在命令模式下输入”p”。
P:将复制的内容粘贴到当前光标的上一行。
:30p:将复制的内容粘贴到第30行后面。

-- 查找(末行模式中使用) --

至上而下
/查找到内容		-- 从光标所在位置开始查找	/find
至下而上
?查找到内容		?find

-- 替换 --

:s/old/new 	-- 使用new替换首次出现的old
:s/old/new/g	-- 使用new替换行中所有出现的old
:m,n s/old/new/g -- 替换从m行到n行所有出现的old
:% s/old/new/g -- 替换所有出现的old

3.压缩,解压篇

zip	  要打包的名字.zip		要压缩的内容(文件或目录)
unzip	
-r 传递压缩 压缩整个目录内容时使用	
实例:
zip -r a.zip  /目录    -- 把当前目录压缩为a.zip
unzip -d /a/b a.zip    -- 把a.zip 解压到/a/b目录下
unzip 文件.zip 	-- 解压到当前目录并创建一个与压缩文件名一样的文件夹
----------------------------------------------------------
tar  打包的文件名后缀为.tar.gz
-c	产生.tar打包文件
-v	显示详细信息
-f	指定压缩后的文件名
-z	打包同时压缩
-x	解包.tar文件
实例:
tar -zcvf a.tar.gz a.txt b.txt   -- 将a.txt 和b.txt 打包压缩为a.tar.gz
tar -zcvf a.tar.gz /home/		-- 将home目录压缩为a.tar.gz	
tar -zxvf a.tar.gz  			-- 解压到当前目录
tar -zxvf a.tar.gz -C /a/b  	-- 将a.tar.gz 解压到/a/b目录下	

-----------------------------------------------------------
zip 和 tar 的不同
zip 先目录后文件
tar 先文件后目录

4.查看文件篇

-- cat -- 

cat 【选项】 文件
-n 	-- 显示行号
cat -n	a.txt | more 	-- 以cat指令打开文件,显示行号,分页显示

-- more -- 

more a.txt  -- 以more指令打开文件

空格(space) 	向下翻一页
enter			向下翻一行
q				立即离开more指令,不再显示文件
Ctrl+F			向下滚动一屏
Ctrl+B			返回上一屏
=				输出当前行的行号
:f				输出文件名和当前行的行号

-- less -- 

less a.txt 	-- 以less指令打开文件
空格(space)	向下翻一页
pagedown		向下翻一页
pageup			向上翻一页
/字符串  		向下搜索字符串
					n:向下查找	N:向上查找
?字符串  		向上搜索字符串
					n:向下查找	N:向上查找
q				离开less指令




-----------------
tail
-----------------
tail a.txt  	-- 查看文件的后10行内容(默认)
tail -n 5  a.txt 	-- 查看文件的后5行内容
tail -f a.txt 	-- 实时监控a.txt 

5.查找文件篇

find	【搜索范围】	【选项】

选项说明
-name<查询方式>		按照指定的文件名查找默认查找文件
-user<用户名>		查找属于指定用户名所有文件
-size<文件大小>		按照指定的文件大小查找文件

实例:
find /home -name a.txt   	-- 在home文件夹中查找a.txt
find /home -name *.txt   	-- 在home文件夹中查找所有txt结尾的文件
find /home -user zsj		-- 在home文件夹中查找用户名为zsj的文件
find /home -size +20M		-- 在home文件夹中查找大小 > 20M的文件
find /home -size 20M		-- 在home文件夹中查找大小 = 20M的文件
find /home -size -20M		-- 在home文件夹中查找大小 < 20M的文件

find ./ -type f -size +1M 


-- local --
local a.txt 	-- 快速定位a.txt文件的所在目录


------------------------------
grep
-----------------------------

grep 【选型】 查找内容 源文件
选项说明
-n 显示匹配行及行号
-i 忽略字母大小
-c 在当前目录中递归查找
-C 显示多少行(默认上下文两行)

cat a.txt | grep -n zsj 	-- 在a.txt 文件中查找zsj所在行,并显示行号
cat a.txt | grep -ni zsj 	-- 在a.txt 文件中查找zsj所在行,并显示行号,忽略大小写
cat a.txt | grep -ni  -C5 zsj 	-- 在a.txt 文件中查找zsj所在行,并显示行号,忽略大小写,并显示上下文5行数据

6.权限

0-9位的显示内容说明
0		-- 确定文件的类型(d,-,l,c,b)
	d	-- 目录
	- 	-- 普通文件
	l	-- 软连接
	c 	-- 字符设备(键盘,鼠标)
	b	-- 块文件(硬盘)
1-3		-- 文件所有者的权限(User)
4-6		-- 同用户组的权限(Group)
7-9		-- 其他用户的权限(Other)


r	-- 读		4
w	-- 写		2
x	-- 执行		1

-- 修改权限 --

u:所有者
g:所有组
o:其他人
a:所有人

chmod u=rwx,g=rx,o=x 文件目录名		--  所有者:读,写,执行  组:读,执行	其他:执行
chmod u-x,g+w abc 					-- 所有者除去了执行权限,组添加了写权限

chmod 751	文件目录名			--  所有者:读,写,执行  组:读,执行	其他:执行

chmod zsj /home/a.txt 	-- a.txt 文件的所有者改为zsj
chmod -R zsj b		 	-- b目录的所有者改为zsj


-- chgrp --
chgrp newgroup file		-- 改变文件的所有组
实例:
chgrp -R a /home/a		-- 将a目录下的所有目录和文件所在组改为a
chgrp a /home/a.txt 	-- 将a.txt文件的组改为a 

7.开机、重启、用户登录注销

-- 关机、重启 --

shutdown	-- 关机
shutdown -h now 	-- 表示立即关机
shutdown -h 1		-- 1分钟后关机
shutdown -r now		-- 立即重启

halt		-- 直接使用,等价于关机
reboot		-- 重启系统
syn			-- 把内存的数据同步到磁盘
				一般关机或重启时,都应该先执行sync指令,
				把内存数据写入到磁盘,防止数据丢失

-- 用户登录和注销 --

登录时尽少使用root账号,避免操作失误
可以使用普通用户登录再使用  su - 用户名 切换为管理员身份 

su - 用户名  	-- 切换用户
logout			-- 注销用户

8.用户管理篇

Linux是多用户多任务的操作系统
Linux用户需要至少属于一个组

-- 添加用户 -- 

useradd  【选项】 用户名
ueradd zsj  	-- 添加用户zsj
useradd -d 指定目录  	-- 新的用户名创建用户家的目录
useradd -d /home/zsj zsj		-- 创建用户zsj,并指定家的目录在/home/zsj目录

-- 指定、修改密码 -- 

passwd	用户名		
passwd zsj  -- 给用户zsj指定、修改密码

-- 删除用户 -- 

userdel zsj 	-- 删除用户zsj
userdel -r zsj 	-- 删除用户zsj,同时也删除用户的家的目录

-- 查询用户信息 -- 

id 用户名
id root  	-- 查询root的信息(用户id号、组id号、组名)

-- 切换用户 -- 

su - zsj	-- 用户切换到 zsj
exit 	-- 返回到原来的用户

高权限用户切换底权限用户不需要输入密码,反之需要密码
返回到原来用户是,使用exit指令


-- 用户组 -- 

groupadd 组名
groupadd sanhui 	-- 创建小组sanhui

-- 删除组 --

groupdel sanhui 	-- 删除小组sanhui

useradd -g 用户组 用户名
useradd -g sanhui zsj	-- 创建用户zsj ,并指定所在组是sanhui
id zsj

-- 修改用户的组 --

usermod -g henan zsj 	-- 修改zsj 所在的组为henan 
id zsj


-- 修改权限 --
chown -R 组:用户 目录
chown -R mysql:mysql /data/mysql

9.找回root密码

思路:进入到单用户模式,然后修改密码
		单用户模式,root不需要密码就可以登录
		
开启 --> 在引导时输入回车键
	-->  看到一个界面输入e
	-->  看到一个新的界面,选中第二行(编辑内核)在输入e
	-->   在这行输入1,在输入回车
	-->  再输入b 进入单用户模式
使用passwd 指令修改root密码

10.其他


ln – 软连接


ln -s sourse dest
ln -s /home/sanhui sanhui – 给/home/sanhui生成软连接sanhui 访问sanhui就是访问/home/sanhui
rm -rf sanhui – 删除软连接(不需要带/,会提示资源忙)


history


history – 查看历史执行过的指令
history 10 – 查看最近的10条
!886 – 执行第886条指令

history -c 清除历史记录


date


date – 显示系统当前时间
date +%Y – 只显示当前年份
date +%m – 只显示当前月份
date +%d – 只显示当前是那一天
date “+%Y-%m-%d%H:%M:%S” – 按照指定的格式显示年月日,时分秒 2021-02-03 16:18:50

date -s 字符串时间 – 设置系统当前时间
date -s “2021-02-03 16:18:50” – 把当前系统时间设置为2021-02-03 16:18:50

– cal –
cal – 查看日历 (默认本月)
cal 2021


etc


/etc/passwd – 用户的配置文件
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 shell
/etc/shadow – 口令的配置信息
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:
警告时间:不活动时间:失效时间:标志
/etc/group – 组的配置信息
组名:口令:组标识号:组内用户列表


init[0123456] – etc/inittab


init切换不同的运行级别
默认级别是5
init 0 是关机


帮助指令


man [命令或配置文件] – 获取帮助信息
man ls – 查看ls命令的帮助信息

help cd – 获取shell内置命令的帮助信息


目录类


pwd – 获取当前工作目录的绝对路径

– ls –

ls [选项] [目录或是文件]

常用选项
-a – 显示当前目录所有的文件和目录,包括隐藏的
-l – 以列表的方式显示信息
一般直接使用ll

cd [参数] – 切换到指定的目录

常用参数
绝对路径
相对路径
cd~ 或 cd – 回到自己家的目录
cd… 回到当前目录的上一级目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值