命令查找
在环境变量$PATH设置的目录里查找符合条件的文件
which java
磁盘空间
查看目录在那个挂载点
df /develop -kh
查看挂载点的容量使用情况
df -h
查看某个目录的容量
du -sh /develop
查看某个目录下有多少个文件夹
du -sm /home
查看某个目录下所有的文件夹且查询文件夹的大小
du -h /home
重启
立即重启(任意一个)
reboot
shutdown -r now
init 6
定时重启(任意一个)
#10分钟后重启
shutdown -r 10
#24点重启
shutdown -r 24:00
#取消shutdown重启
shutdown -c
主机名
#查看主机名
hostname
#临时修改主机名
hostname 主机名
#永久修改
vi /etc/hostname
网络相关
#查看ip信息
ip a
#测试网络联通
ping [选项] 目标主机
#设置网络信息
vi /etc/sysconfig/network-scripts/ifcfg-ens33
#重启network网络服务
service network restart
防火墙
#查看防火墙状态
systemctl status firewalld
#开启防火墙
systemctl start firewalld
#禁止开机启动
systemctl disable firewalld
#关闭防火墙
systemctl stop firewalld
目录
#切换工作目录
cd [目录位置]
#显示目录内容
ls [选项]... [目录或文件名]
ls常用选项
常用命令选项
-l :详细信息显示
-a:显示所有子目录和文件的信息,包括隐藏文件
-A:类似于“-a”,但不显示“.”和“…”目录的信息
-R:递归显示内容
#创建新的目录
mkdir [-p] [/路径/]目录名
#统计目录占用情况
du [选项]... [目录或文件名]
du常用选项
-a:统计时包括所有的文件,而不仅仅只统计目录
-h:以更易读的字节单位(K、M等)显示信息
-s:只统计每个参数所占用空间总的大小
文件
#新建文件
touch 文件名
#查看文件类型
file 文件名
#复制文件或目录
cp [选项] 源文件或目录… 目标文件或目录
复制常用选项
-r:递归复制整个目录树
-p:保持源文件的属性不变
-f:强制覆盖目标同名文件或目录
-i:需要覆盖文件或目录时进行提醒
远程拷贝
复制文件(本地>>远程):scp /cloud/data/test.txt root@xxx:/cloud/data/
复制文件(远程>>本地):scp root@xxx:/cloud/data/test.txt /cloud/data/
复制目录(本地>>远程):scp -r /cloud/data root@xxx:/cloud/data/
复制目录(远程>>本地):scp -r root@xxx:/cloud/data/ /cloud/data/
删除文件
rm [选项] 文件或目录
删除常用选项
-f:强行删除文件,不进行提醒
-i:删除文件时提醒用户确认
-r:递归删除整个目录树
移动文件
mv [选项]... 源文件或目录… 目标文件或目录
如果目录相同,则为修改文件名称操作
查找
find <路径> <选项> [表达式]
从指定路径下递归向下搜索文件
支持按照各种条件方式查找
支持对查找到的文件再进一步的使用指令操作
(例如:删除、统计大小、复制等)
常用命令选项
-name 根据文件名查找
-user 根据文件拥有者查找
-group 根据文件所属组寻找文件
-perm 根据文件权限查找文件
-size 根据文件大小查找文件
-type 根据文件类型查找(f-普通文件,c-字符设备文件,b-块设备文件,l-链接文件,d-目录)
-o 表达式或
-and 表达式与
文件大小查询
df -h
用于展示文件内容大小及所占挂载点的比例
du -sh *
用于展示目录下文件夹的大小
文件内容操作
#显示文件内容
cat
#全屏分页显示
more
less
more和less的操作方式
按Enter键向下逐行滚动
按空格键向下翻一屏、按b键向上翻一屏
按q键退出
#查看开头10行
head -10 a.txt
#查看结尾10行
tail -10 a.txt
#跟踪结尾
tail -f a.txt
文件统计
wc [选项] 目标文件
常用选项
-l:统计行数
-w:统计单词个数
-c:统计字节数
查找文件中符合条件的字符串
grep [选项] <关键字> <文件…>
-c:计算匹配关键字的行数
-i:忽略字符大小写的差别
-n:显示匹配的行及其行号
-s:不显示不存在或不匹配文本的错误信息
-h: 查询多个文件时不显示文件名
-l:查询文件时只显示匹配字符所在的文件名
–color=auto:将找到的关键字部分加上颜色显示
压缩
gzip [选项] 压缩(解压缩)的文件名
gzip压缩后缀为gz
常用选项
-d将压缩文件解压(decompress)
-l显示压缩文件的大小,未压缩文件的大小,压缩比(list)
-v显示文件名和压缩比(verbose)
-num用指定的数字num调整压缩的速度,-1或–fast表示最快压缩方法(低压缩比),-9或–best表示最慢压缩方法(高压缩比)。系统缺省值为6
bzip2 [-cdz] 文档名
bzip2压缩后缀为bz
常用选项
-c将压缩的过程产生的数据输出到屏幕上
-d解压缩的参数(decompress)
-z压缩的参数(compress)
-num 用指定的数字num调整压缩的速度,-1或–fast表示最快压缩方法(低压缩比),-9或–best表示最慢压缩方法(高压缩比)。系统缺省值为6
tar [cvf]... 压缩名 文件名(压缩文件)
tar [xvf]... 文件名.tar(解压文件)
常用命令选项
-c:创建 .tar 格式的包文件
-x:解开.tar格式的包文件
-v:输出详细信息
-f:表示使用归档文件
文本操作
插入命令
键 | 说明 |
---|---|
i | 光标前插入 |
I | 在光标当前行开始插入 |
a | 在光标后插入 |
A | 在光标当前行末尾插入 |
o | 在光标当前行的下一行插入新行 |
O | 在光标当前行的上一行插入新行 |
定位命令
键 | 说明 |
---|---|
:set nu | 显示行号 |
:set nonu | 不显示行号 |
gg | 到文本第一行 |
G | 到文本最后一行 |
:n | 到文本第n行 |
删除命令
dd:删除当前行
ndd:删除光标所在当前行向下数n行
D:删除当前行光标所在的位置后面的字符
x:向后删除光标所在位置的字符
X:向前删除光标前面的字符
nX:删除前面的n个字符,光标所在的字符将不会被删
复制和粘贴
yy或Y:复制当前行
nyy或nY:复制以下n行
p:在光标后面插入buffer中的内容
P:在光标前面插入buffer中的内容
替换和撤销命令
r:取代光标所在处的字符
R:从光标所在处开始替换字符,按esc结束
u:撤销上一步操作
定位命令
h:左移一个字符
l:右移一个字符
j:下移一行
k:上移一行
$:移至行尾
0:移至行首
nG:移到第n行
替换
#将当前行中查找到的第一个字符old替换为new
:s /old/new
#将当前行中查找到的所有字符串old替换为new
:s /old/new/g
#在行号“m,n”范围内替换所有的字符串“old”为“new”
:m,n s/old/new/g
#在整个文件范围内替换所有的字符串“old”为“new”
:% s/old/new/g
#查找文件中所有行第一次出现的old,替换为new
:% s/old/new
文件保存和退出
:W[文件路径]保存当前文件
:q 如果未对文件做改动则退出
:q! 放弃存储名退出
:wq或:x 保存退出
添加用户
useradd
-u 指定组ID(uid)
-g 指定所属的组名(gid)
-G 指定多个组,用逗号“,”分开(Groups)
-c 用户描述(comment)
-e 失效时间(expire date)
查找所有用户
cut -d : -f 1 /etc/passwd
设置密码
passwd [选项] <用户名>
-d:清空用户的密码,使之无需密码即可登录
-l:锁定用户帐号
-S:查看用户帐号的状态(是否被锁定)
-u:解锁用户帐号
-x: 最大密码使用时间(天)
-n: 最小密码使用时间(天)
修改用户
usermod
-l 修改用户名 (login)usermod -l a b(b改为a)
-g 添加组 usermod -g sys tom
-G添加多个组 usermod -G sys,root tom
–L 锁定用户账号密码(Lock)
–U 解锁用户账号(Unlock)
删除用户
userdel [选项] 用户名
-r 删除账号时同时删除目录(remove)
查看用户组
cut -d : -f 1 /etc/group
添加组
groupadd
修改组属性
groupmod [选项] <用户名>
-g:设置想要使用的GID
-o:使用已经存在的GID
-n:设置想要使用的群组名称
添加删除组成员
gpasswd [选项] 组帐号名
-a:向组内添加一个用户
-d:从组内删除一个用户成员
-M:定义组成员列表,以逗号分隔
删除组账号
groupdel <组账号名>
只能删除那些没有被任何用户指定为主组的组
显示用户所属组
groups [用户名]
修改文件权限
chmod [ugoa] [+-=] [rwx] file/dir 或 chmod nnn file/dir
u:属主 g:属组 o:其他用户 a:所有用户
+:添加权限 -:删除权限 =:赋予权限
nnn:三位八进制的权限
-R 递归修改指定目录下的所有子文件及文件夹的权限
-f 强制改变文件访问特权;如果是文件的拥有者,则得 不到任何错误信息
修改文件所属
chown 属主 file/dir
chown :属组 file/dir
chown 属主:属组 file/dir
-R:递归的修改指定目录下所有文件、子目录的归属
RPM软件包管理
rpm
-i:安装应用程序(install)
-e:卸载应用程序(erase)
-vh:显示安装进度;(verbose hash)
-U:升级软件包;(update)
-qa: 显示所有已安装软件包(query all)
YUM安装包管理
yum install gcc-c++
yum remove gcc-c++
yum update gcc-c++
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。