admin管理员组文章数量:1603460
文件
切换目录
cd
cd ~ #用户根目录
cd .. #上一级目录
cd - #上次工作目录
pwd
pwd #显示当前工作目录
预览
ls
ls #预览文件
ls -l #列表查看
ls -h #切换单位
ls -a #显示隐藏
ls .. #查看同级文件
tree
tree #树状图展示文件
操作
cp
cp file 目标file #复制文件
cp -R dir 目标dir #复制目录
mv
mv file 目标file #移动文件或目录
rm
rm file #删除文件
rm -i file #以交互式方式进行
rm -f file #强制删除,忽略不存在的文件,无需提示
rm -r file #递归的删除目录下的内容,删除文件夹时必须加此参数
tar
tar -c #创建打包文件
tar -x #解开打包文件
tar -z #使用gzip压缩格式压缩/解压
tar -j #使用bzip2压缩格式压缩/解压
tar -f #指定压缩包文件
tar -v #显示执行过程
tar -cvf file.tar file #打包
tar -xvf file.tar #解包
tar -zcvf file.tar.gz file #打包压缩
tar -jcvf file.tar.bz2 file #打包压缩
tar -zxvf file.tar.gz #解压解包
tar -jxvf file.tar.bz2 #解压解包
mkdir
mkdir dir #创建文件夹
mkdir -p dir #递归创文件夹
touch
touch file #创建文件
touch file{1..9} #批量创建文件
stat
stat file #显示文件详情
搜索
find
find ./ -name test.sh #按文件名搜索
find ./ -size 2M #按文件大小搜索
find ./ -perm 0777 #按文件权限搜索
which
which #搜索命令本体文件
文本
查看
cat
cat file #直接查看
cat -b file #对输出内容中的非空行标注行号
cat -n file #对输出内容中的所有行标注行号
more
more file #分屏显示
less
less file #分屏显示
head
head -5 file #看文件前五行
tail
tail -5 file #看文件倒数五行
tail -f file #实时刷新文件
统计
wc
wc [-lwm] [filename]
-l: 统计行数
-w:统计英文单词
-m:统计字符数
wc file file_1 file_2 #统计三个文件的信息
筛选
grep
grep -v #反向查找
grep -i #忽略大小写
grep ^ #开头
grep $ #结尾
grep -v '^$' #去掉空行
grep -Ev '^#|^$'
格式化
cut
cut -d '分隔字符' -f 选取的列数
#只显示/etc/passwd的用户和shell:
cat /etc/passwd | cut -d ':' -f 1,7
root:/bin/bash
daemon:/bin/sh
bin:/bin/sh
uniq
#去重
选项与参数:
-i :忽略大小写字符的不同;
-c :进行计数
-u :只显示唯一的行
sourt
#排序
默认是以第一个字符升序排序
-f :忽略大小写的差异,例如 A 与 a 视为编码相同;
-b :忽略最前面的空格符部分;
-M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法;
-n :使用『纯数字』进行排序(默认是以文字型态来排序的);
-r :反向排序;
-u :就是 uniq ,相同的数据中,仅出现一行代表;
-t :分隔符,默认是用 [tab] 键来分隔;
-k :以哪个区间 (field) 来进行排序
编辑
vim
vim | 解释 |
---|---|
i | 插入模式 |
A | 到行末插入 |
o | 下一行 |
yy | 复制 |
p | 粘贴 |
dd | 删除 |
u | 撤销 |
/ | 查找 |
ZZ | 保存退出 |
ZQ | 不保存退出 |
:set nu | 显示行号 |
磁盘
概况
df
df -Th #显示磁盘概况,文件系统,磁盘容量
lsblk
lsblk #查看系统的磁盘使用情况
分区
fdisk
fdisk -l #分区情况
fdisk /dev/sda #进行分区
p:显示磁盘分区
n:新建分区
d:删除分区
t:更改分区的系统id
m:帮助
q:退出
w:保存
LVM
yum install lvm2
pv
pvcreate /dev/sdb1 #创建物理卷
pvdisplay #查看物理卷
vg
vgcreate vg0 /dev/sdb1 /dev/sdb2 #创建卷组vg0
vgdisplay #查看卷组
vgextend vg0 /dev/sdc #扩容卷组
vgremove vg0 #删除卷组
lv
lvcreate -L 10G -n lv1 vg0 #创建一个名为lv1的10G逻辑卷
lvdisplay #查看逻辑卷
lvextend -L +10G /dev/vg0/lv1 #扩容逻辑卷
lvreduce -L -10G /dev/vg0/lv1 #缩小逻辑卷
lvremove lv1 #删除逻辑卷
RAID5
mdadm
mdadm -C /dev/md5 -l 5 -n 3 /dev/sdb1 /dev/sdb2 /dev/sdb3 -x 1 /dev/sdb4 #创建RAID5
mdadm -D /dev/md5 #查看RAID5
mdadm /dev/md5 -a /dev/sdb5 #添加热备盘
mdadm /dev/md5 -f /dev/sdb1 #模拟活动盘损坏
mdadm /dev/md5 -r /dev/sdb1 #移出损坏盘
mdadm -G /dev/md5 -n 4 #设置活动盘个数
mdadm -S /dev/md5 #删除RAID5
mdadm -Ds > /etc/mdadm.conf
#将mdadm -Ds命令产生的配置信息,重定向到/etc/mdadm.conf文件中去,否则,重启Linux后,就找不到该磁盘阵列/dev/md5了
格式化
mkfs
mkfs.ext4 /dev/sda1 #格式化成ext4格式
挂载
mount
mount /dev/sr0 /media #挂载
umount /dev/sr0 #卸除
网卡
ip
ip addr #IP地址
ip -s link #显示当前的网络设备的详细运行状态
ip route list #显示当前核心路由表信息
ifconfig
yum install net-tools
ifconfig #网卡信息
ifconfig eth0:1 192.168.147.131 netmask 255.255.255.0 #创建虚拟网卡
ifup eth0 #启用一个 'eth0' 网络设备
ifdown eth0 #禁用一个 'eth0' 网络设备
nmcli
nmcli dev #查看硬件网络设备
nmcli r wifi on #开启对应设备的WiFi
nmcli dev wifi #扫描当前环境下的WiFi
nmcli dev wifi connect WiFi名字 password WiFi密码 ifname wlan0 #连接WiFi
netstat
netstat -an #所有端口
netstat -tunlp #tcp&udp
用户
添加
useradd
useradd user #添加用户
useradd -g group user #指定组名称
useradd -m user #自动建立用户家目录
groupadd
groupadd group #添加组
删除
userdel
userdel user #删除用户
userdel -r user #同时删除用户的家目录
groudel
groupdel group #删除组
修改
usermod
usermod -L user #锁定用户
usermod -U user #解锁用户
usermod -g group user #修改用户所在组
usermod -d url user #修改用户家目录
usermod -l name user #修改用户名
groupmod
groupmod -g 102 group #修改组号
groupmod -n name group #修改组名
密码
passwd
passwd user #设置用户密码
passwd -d user #设置用户密码为空
passwd -f user #强迫用户下次登录时修改密码
passwd -l user #禁用账号
passwd -u user #解锁账号
用户切换
su
su - user #同时切换到普通用户所在的目录
logout #注销
exit #登出
newgrp
如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。
用户可以在登录后,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组。
newgrp root #切换所在组
id
id user #显示用户信息
sudo
sudo命令可以临时获取root权限
sudo -l #显示出自己(执行 sudo 的使用者)的权限
sudo !! #以root权限执行上一条命令
软件
yum
yum update #更新
yum repolist #统计
yum install #安装
yum remove #卸载
yum list #列出
yum search #在rpm仓库中搜寻软件包
yum clean all #清空缓存
yum makecache #建立新缓存
rpm
rpm -qa #查询系统中安装的所有软件包
rpm -q #查询指定软件包在系统中是否安装
rpm -ivh #安装一个rpm包
rpm -qi #获取一个已安装包的特殊信息
rpm -qf #确认所给的文件由哪个rpm包所提供
rpm -ql package_name #显示一个已经安装的rpm包提供的文件列表
apt
apt search package #搜索包
apt show package #获取包的相关信息,如说明、大小、版本等
apt install package #安装包
apt remove package #删除包
apt purge package #删除包,包括删除配置文件等
apt autoremove #自动卸载所有未使用的软件包
apt full-upgrade #升级包,删除旧包
apt dist-upgrade #升级系统
apt clean && apt autoclean #清理无用的包
进程
htop
#yum install htop
ps
ps -a #显示所有进程信息
ps -e #显示环境变量信息
ps -f #显示树状结构
ps -u #以用户为分类
ps -x #不区分终端机
kill
kill PID #默认使用参数-15
kill -15 PID #通知进程结束
kill -9 PID #强制终止进程
权限
chmod
r:4 w:2 x:1 suid:4 sgid:2 sbid:1
chmod -R dir #递归目录下所有文件加权限
chmod 755 file #数字设置普通权限
chmod 4755 file #数字设置特殊权限
chmod 2755 file #数字设置特殊权限
chown
chown user file #修改文件所有者
chgrp
chgrp group file #修改文件所属组
setfacl
setfacl命令可以用来细分linux下的文件权限
setfacl -m g:group:rw file #单独设置组对文件的权限
setfacl -m u:user:rw file #单独设置用户对文件的权限
setfacl -x u:user file #删除用户的acl权限
setfacl -b file #删除所有
getfacl file #查看文件详细权限
getfacl
getfacl file #显示文件上设置的acl信息
umask
#权限掩码,umask值用于设置用户在创建文件时的默认权限
chattr
chattr概述:凌驾于r、w、x、suid、sgid之上的权限。
chattr +i #锁定文件,不能编辑,不能修改,不能删除,不能移动,可以执行
chattr +a #仅可以追加文件,不能编辑,不能删除,不能移动,可以执行
chattr -i #去权限
chattr -a #去权限
lsattr
lsattr file #查看文件的隐藏权限
lsattr -d dir #查看目录的隐藏权限
防火墙
firewalld
iptables -L #显示当前防火墙策略中全部的过滤表信息
iptables -L -t nat #显示当前防火墙策略中指定的NAT表信息
iptables -F #清空规则
SELinux
getenforce #查看状态
setenforce 0/1 #关闭/开启
服务管理
systemctl
systemctl list-unit-files #查看所有已安装的服务
systemctl status service #查看服务状态
systemctl start/stop/restart service #启动停止重启服务
systemctl enable/disable service #开机自启
systemctl reload service #重载服务的配置文件
update-rc.d ssh enable #开机自启
系统
快捷键 | 解释 |
---|---|
ctrl+l | 清屏 |
ctrl+c | 终止运行 |
ctrl+z | 后台运行 |
tab | 补全命令 |
运行级别
init
init 0 #关机
init 6 #重启
reboot #重启
poweroff #关机
shutdown now #关机
历史命令
history
history #查看历史命令
history N #显示最近N条命令
history -c #清除所有的历史记录
history -w xxx.txt #保存历史记录到文本xxx.txt
history -d [num] #删除指定命令
[space]set +o history #禁用历史功能
备注:[space] 表示空格。并且由于空格的缘故,该命令本身也不会被记录。
[Space]set -o history #启用历史功能
远程连接
ssh
ssh root@192.168.186.153 #windows远程登录
ssh -p 22 root@192.168.200.128 #linux远程登陆
ssh -i id_rsa user@ip #私钥登录
下载
wget
wget url #直接下载文件
wget -o #指定保存位置下载
文件传输
curl
curl -O http://example/file.txt #下载文件
tmux终端
安装
# Ubuntu or Debian
sudo apt-get install tmux
# CentOS or Fedora
sudo yum install tmux
# Mac
brew install tmux
session
tmux #新建session,可以在terminal上输入tmux命令,会自动生成一个id为0的session
tmux new -s your-session-name #也可以在建立时显式地说明session的名字
tmux attach -t your-session-name #进入已建立的session
ctrl+b s
列出所有session
ctrl+d
关闭该session的所有窗口来退出该session
ctrl+b d
将当前session与窗口分离,session转到后台执行
ctrl+b $
进行重命名session
窗口
ctrl+b w
列出所有窗口
ctrl+b c
创建新窗口
ctrl+b num
切换窗口
窗格
ctrl+b "
划分上下两个窗格
ctrl+b %
划分左右两个窗格
ctrl+b →
切换窗格
ctrl+b z
全屏当前窗格
ctrl+b x
关闭当前窗格
ctrl+b !
将当前窗格分为一个独立窗口
ctrl+b ctrl+↑
调整窗口大小
版权声明:本文标题:❤️Linux 常用命令(纯享版)❤️ 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1728435050a1158023.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论