共计 7996 个字符,预计需要花费 20 分钟才能阅读完成。
前 言
记得不久前跟大家大分享了一波集体在平时日常工作、学习、开发、写文字、做视频等过程中,一些好用高效的在线工具和网站,并且把本人的浏览器收藏夹书签离线文件都导出给大家了。
很多小伙伴后盾反馈还不错,说书签一导入后,很多工具的确挺好用,次要省了很多找资源和整顿的工夫。
明天持续分享,最近花了不少工夫把平时开发过程中罕用的一些 Linux 系统命令给做了一个大整顿,造成一个罕用高频 Linux 速查备忘录。有了它,还怕 Linux 操作系统罕用操作和命令记不住么?
接下来间接上菜吧。
注:本文 GitHub https://github.com/rd2coding/Road2Coding 曾经收录,外面有我整顿的 6 大编程方向(岗位) 的自学路线 + 知识点大梳理 、 面试考点 、 我的简历 、 几本硬核 pdf 笔记 ,以及 我的程序员人生。
关机 / 重启 / 登记
常用命令 | 作用 |
---|---|
shutdown -h now | 即刻关机 |
shutdown -h 10 | 10 分钟后关机 |
shutdown -h 11:00 | 11:00 关机 |
shutdown -h +10 | 预约工夫关机(10 分钟后) |
shutdown -c | 勾销指定工夫关机 |
shutdown -r now | 重启 |
shutdown -r 10 | 10 分钟之后重启 |
shutdown -r 11:00 | 定时重启 |
reboot | 重启 |
init 6 | 重启 |
init 0 | 立即关机 |
telinit 0 | 关机 |
poweroff | 立即关机 |
halt | 关机 |
sync | buff 数据同步到磁盘 |
logout | 退出登录 Shell |
留神点:比方同样是关机,shutdown、poweroff、halt、init 0 有什么区别呢?这个有趣味能够本人理解一下,它们是有区别的。
零碎信息和性能查看
这里命令其实平时用得是十分之多的,因为一旦零碎或者后盾服务除了问题,咱们常常要登上去查看,包含很多的零碎信息,比方:零碎版本、内核版本、处理器架构、计算机名、环境变量、用户状况、负载状况、内存用量、磁盘信息、过程、网络连接 …
常用命令 | 作用 |
---|---|
uname -a | 查看内核 /OS/CPU 信息 |
uname -r | 查看内核版本 |
uname -m | 查看处理器架构 |
arch | 查看处理器架构 |
hostname | 查看计算机名 |
who | 显示以后登录零碎的用户 |
who am i | 显示登录时的用户名 |
whoami | 显示以后用户名 |
cat /proc/version | 查看 linux 版本信息 |
cat /proc/cpuinfo | 查看 CPU 信息 |
cat /proc/interrupts | 查看中断 |
cat /proc/loadavg | 查看零碎负载 |
uptime | 查看零碎运行工夫、用户数、负载 |
env | 查看零碎的环境变量 |
lsusb -tv | 查看零碎 USB 设施信息 |
lspci -tv | 查看零碎 PCI 设施信息 |
lsmod | 查看已加载的零碎模块 |
grep MemTotal /proc/meminfo | 查看内存总量 |
grep MemFree /proc/meminfo | 查看闲暇内存量 |
free -m | 查看内存用量和替换区用量 |
date | 显示零碎日期工夫 |
cal 2021 | 显示 2021 日历表 |
top | 动态显示 cpu/ 内存 / 过程等状况 |
vmstat 1 20 | 每 1 秒采一次零碎状态,采 20 次 |
iostat | 查看 io 读写 /cpu 应用状况 |
sar -u 1 10 | 查问 cpu 应用状况(1 秒一次,共 10 次) |
sar -d 1 10 | 查问磁盘性能 |
磁盘和分区
这是和日常应用非亲非故的一些常用命令,在 Windows 零碎外面咱们点点鼠标,图形化界面上就能查看,然而在 Linux 中咱们应该熟练掌握用命令的形式来查看,比方:各种分区信息查看、磁盘应用状况、文件和目录大小、各种挂载和卸载 …
常用命令 | 作用 | |
---|---|---|
fdisk -l | 查看所有磁盘分区 | |
swapon -s | 查看所有替换分区 | |
df -h | 查看磁盘应用状况及挂载点 | |
df -hl | 查看磁盘残余空间 | |
du -sh /dir | 查看指定目录大小 | |
`du -sk * | sort -rn` | 从高到低顺次显示文件和目录大小 |
mount /dev/hda2 /mnt/hda2 | 挂载 hda2 盘 | |
mount -t ntfs /dev/sdc1 /mnt/usbhd1 | 指定文件系统类型挂载(如 ntfs) | |
mount -o loop xxx.iso /mnt/cdrom | 挂载 iso 文件 | |
mount /dev/sda1 /mnt/usbdisk | 挂载 usb 盘 / 闪存设施 | |
umount -v /dev/sda1 | 通过设施名卸载 | |
umount -v /mnt/mymnt | 通过挂载点卸载 | |
fuser -km /mnt/hda1 | 强制卸载(慎用) |
用户和用户组
Linux 零碎里用户组和用户自身也是一个十分重要的概念,这部分命令次要就是对于:用户的 CRUD、用户组的 CURD、而后还包含查用户、切换用户、改明码、查用户登录日志 …
常用命令 | 作用 |
---|---|
useradd codesheep | 创立用户 |
userdel -r codesheep | 删除用户 |
usermod -g group_name user_name | 批改用户的组 |
usermod -aG group_name user_name | 将用户增加到组 |
usermod -s /bin/ksh -d /home/codepig –g dev codesheep | 批改用户 codesheep 的登录 Shell、主目录以及用户组 |
groups test | 查看 test 用户所在的组 |
groupadd group_name | 创立用户组 |
groupdel group_name | 删除用户组 |
groupmod -n new_name old_name | 重命名用户组 |
su – user_name | 残缺切换到一个用户环境 |
passwd | 批改口令 |
passwd codesheep | 批改某用户的口令 |
w | 查看流动用户 |
id codesheep | 查看指定用户信息 |
last | 查看用户登录日志 |
crontab -l | 查看以后用户的打算工作 |
cut -d: -f1 /etc/passwd | 查看零碎所有用户 |
cut -d: -f1 /etc/group | 查看零碎所有组 |
网络和过程治理
咱们作为一个后端开发,这些命令平时用到的概率很大,比方:查看网络、查看连贯、查看端口服务、配置网卡 / 防火墙 / 路由表 /DNS,查看和过滤过程,采集零碎状态,还有一些零碎性能的监控和排查命令 … 等等。这些命令,在后端开发连到公司服务器下来排查问题时就很有用了,用得也很频繁。
常用命令 | 作用 | |
---|---|---|
ifconfig | 查看网络接口属性 | |
ifconfig eth0 | 查看某网卡的配置 | |
route -n | 查看路由表 | |
netstat -lntp | 查看所有监听端口 | |
netstat -antp | 查看所有曾经建设的连贯 | |
netstat -lutp | 查看 TCP/UDP 的状态信息 | |
ifup eth0 | 启用 eth0 网络设备 | |
ifdown eth0 | 禁用 eth0 网络设备 | |
iptables -L | 查看防火墙设置 | |
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 | 配置 ip 地址 | |
dhclient eth0 | 以 dhcp 模式启用 eth0 | |
route add -net 0/0 gw Gateway_IP | 配置默认网关 | |
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 | 配置动态路由达到网络 ’192.168.0.0/16′ | |
route del 0/0 gw Gateway_IP | 删除动态路由 | |
hostname | 查看主机名 | |
host www.codesheep.cn | 解析主机名 | |
nslookup www.codesheep.cn | 查问 DNS 记录,查看域名解析是否失常 | |
ps -ef | 查看所有过程 | |
`ps -ef | grep codesheep` | 过滤出你须要的过程 |
kill -s name | kill 指定名称的过程 | |
kill -s pid | kill 指定 pid 的过程 | |
top | 实时显示过程状态 | |
vmstat 1 20 | 每 1 秒采一次零碎状态,采 20 次 | |
iostat | 查看 io 读写 /cpu 应用状况 | |
sar -u 1 10 | 查问 cpu 应用状况(1 秒一次,共 10 次) | |
sar -d 1 10 | 查问磁盘性能 |
常见零碎服务命令
这类命令平时接触得也很多,比方咱们本人在装置和部署各种各样的根底编程环境和服务时就罕用,比方装 JDK、MySQL 数据库、redis 缓存、nginx 服务器 …
常用命令 | 作用 |
---|---|
chkconfig --list | 列出零碎服务 |
service < 服务名 > status | 查看某个服务 |
service < 服务名 > start | 启动某个服务 |
service < 服务名 > stop | 终止某个服务 |
service < 服务名 > restart | 重启某个服务 |
systemctl status < 服务名 > | 查看某个服务 |
systemctl start < 服务名 > | 启动某个服务 |
systemctl stop < 服务名 > | 终止某个服务 |
systemctl restart < 服务名 > | 重启某个服务 |
systemctl enable < 服务名 > | 开启自启动 |
systemctl disable < 服务名 > | 敞开自启动 |
文件和目录操作
这类命令全副是 Linux 零碎应用的基本操作,也是平时用到频率最高的一些命令,对于文件操作的、对于目录操作的、对于门路的。比方:对文件和目录的各种高频操作,创立、查看、查找、删除、重命名、复制、软连贯、疾速定位和查找 … 等等。都是些高频的实用命令。
常用命令 | 作用 | |
---|---|---|
cd < 目录名 > | 进入某个目录 | |
cd .. | 回下级目录 | |
cd ../.. | 回上两级目录 | |
cd | 进集体主目录 | |
cd – | 回上一步所在目录 | |
pwd | 显示以后门路 | |
ls | 查看文件目录列表 | |
ls -F | 查看目录中内容(显示是文件还是目录) | |
ls -l | 查看文件和目录的详情列表 | |
ls -a | 查看暗藏文件 | |
ls -lh | 显示权限 | |
ls -lSr | more | 按大小查看文件 / 目录 |
tree | 查看文件和目录的树形构造 | |
mkdir < 目录名 > | 创立目录 | |
mkdir dir1 dir2 | 同时创立两个目录 | |
mkdir -p /tmp/dir1/dir2 | 创立目录树 | |
rm -f file1 | 删除 ’file1’ 文件 | |
rmdir dir1 | 删除 ’dir1’ 目录 | |
rm -rf dir1 | 删除 ’dir1’ 目录和其内容 | |
rm -rf dir1 dir2 | 同时删除两个目录及其内容 | |
mv old_dir new_dir | 重命名 / 挪动目录 | |
cp file1 file2 | 复制文件 | |
cp dir/* . | 复制某目录下的所有文件至当前目录 | |
cp -a dir1 dir2 | 复制目录 | |
cp -a /tmp/dir1 . | 复制一个目录至当前目录 | |
ln -s file1 link1 | 创立指向文件 / 目录的软链接 | |
ln file1 lnk1 | 创立指向文件 / 目录的物理链接 | |
find / -name file1 | 从跟目录开始搜寻文件 / 目录 | |
find / -user user1 | 搜寻用户 user1 的文件 / 目录 | |
find /dir -name *.bin | 在目录 /dir 中搜带有.bin 后缀的文件 | |
locate 关键词 | 疾速定位文件 | |
locate *.mp4 | 寻找.mp4 结尾的文件 | |
whereis halt | 显示某二进制文件 / 可执行文件的门路 | |
which halt | 查找系统目录下的二进制文件 | |
chmod ugo+rwx dir1 | 设置目录所有者 (u)、群组(g) 及其他人 (o) 的读(r)写 (w) 执行 (x) 权限 | |
chmod go-rwx dir1 | 移除群组 (g) 与其他人 (o) 对目录的读写执行权限 | |
chown user1 file1 | 扭转文件的所有者属性 | |
chown -R user1 dir1 | 扭转目录的所有者属性 | |
chgrp group1 file1 | 扭转文件群组 | |
chown user1:group1 file1 | 扭转文件的所有人和群组 |
文件查看和解决
这部分命令次要针对性地对于文件解决或者说文本处理,比方咱们作为一个程序员,那操作最多的就是代码源文件,各种花式查看、比拟、减少、删除、替换、合并 … 等等一系列疾速操作。
常用命令 | 作用 | |
---|---|---|
cat file1 | 查看文件内容 | |
cat -n file1 | 查看内容并标示行数 | |
cat xxx.txt | awk ‘NR%2==1’ | 查看文件中的所有奇数行 |
tac file1 | 从最初一行开始反看文件内容 | |
more file1 | 查看一个长文件的内容 | |
less file1 | 相似 more 命令,但容许反向操作 | |
head -2 file1 | 查看文件前两行 | |
tail -2 file1 | 查看文件后两行 | |
tail -f /log/msg | 实时查看增加到文件中的内容 | |
grep codesheep hello.txt | 在文件 hello.txt 中查找关键词 codesheep | |
grep ^sheep hello.txt | 在文件 hello.txt 中查找以 sheep 结尾的内容 | |
grep [0-9] hello.txt | 抉择 hello.txt 文件中所有蕴含数字的行 | |
sed ‘s/s1/s2/g’ hello.txt | 将 hello.txt 文件中的 s1 替换成 s2 | |
sed ‘/^$/d’ hello.txt | 从 hello.txt 文件中删除所有空白行 | |
sed ‘/ *#/d; /^$/d’ hello.txt | 从 hello.txt 文件中删除所有正文和空白行 | |
sed -e ‘1d’ hello.txt | 从文件 hello.txt 中排除第一行 | |
sed -n ‘/s1/p’ hello.txt | 查看只蕴含关键词 ”s1″ 的行 | |
sed -e ‘s/ *$//’ hello.txt | 删除每一行最初的空白字符 | |
sed -e ‘s/s1//g’ hello.txt | 从文档中只删除词汇 s1 并保留残余全副 | |
sed -n ‘1,5p;5q’ hello.txt | 查看从第一行到第 5 行内容 | |
sed -n ‘5p;5q’ hello.txt | 查看第 5 行 | |
paste file1 file2 | 合并两个文件或两栏的内容 | |
paste -d ‘+’ file1 file2 | 合并两个文件或两栏的内容,两头用 ”+” 辨别 | |
sort file1 file2 | 排序两个文件的内容 | |
sort file1 file2 | uniq | 取出并集(反复的行只保留一份) |
sort file1 file2 | uniq -u | 删除交加,留下其余行 |
sort file1 file2 | uniq -d | 取交加 |
comm -1 file1 file2 | 比拟两个文件的内容(去除 ’file1’ 所含内容) | |
comm -2 file1 file2 | 比拟两个文件的内容(去除 ’file2’ 所含内容) | |
comm -3 file1 file2 | 比拟两个文件的内容(去除两文件共有局部) |
打包和解压
这部分内容次要对于文件或者目录的打包压缩和解压,波及好几种压缩包格局和文件,这部分命令在平时用得也是十分十分频繁的。
常用命令 | 作用 |
---|---|
zip xxx.zip file | 压缩至 zip 包 |
zip -r xxx.zip file1 file2 dir1 | 将多个文件 + 目录压成 zip 包 |
unzip xxx.zip | 解压 zip 包 |
tar -cvf xxx.tar file | 创立非压缩 tar 包 |
tar -cvf xxx.tar file1 file2 dir1 | 将多个文件 + 目录打 tar 包 |
tar -tf xxx.tar | 查看 tar 包的内容 |
tar -xvf xxx.tar | 解压 tar 包 |
tar -xvf xxx.tar -C /dir | 将 tar 包解压至指定目录 |
tar -cvfj xxx.tar.bz2 dir | 创立 bz2 压缩包 |
tar -jxvf xxx.tar.bz2 | 解压 bz2 压缩包 |
tar -cvfz xxx.tar.gz dir | 创立 gzip 压缩包 |
tar -zxvf xxx.tar.gz | 解压 gzip 压缩包 |
bunzip2 xxx.bz2 | 解压 bz2 压缩包 |
bzip2 filename | 压缩文件 |
gunzip xxx.gz | 解压 gzip 压缩包 |
gzip filename | 压缩文件 |
gzip -9 filename | 最大水平压缩 |
而后接下来就是一些常见的包管理器命令。首先什么是包管理器,大家应该都分明。
这么说吧,如果没有包管理器这个货色的存在,那预计仅仅是 Linux 零碎上的软件装置,怕是就要劝退很多用户了,因为很多的软件依赖解决会让人抓狂。因而简略来说,咱们能够将包管理器了解为,用来为 Linux 零碎上的软件装置、卸载、降级、查问提供反对的组件,所以对于用户应用来说,个别就是一组工具命令集。
咱们平时应用最广的比方,红帽子的包构造 RPM 包管理器,像 RedHat、CentOS 等零碎都在用,典型的命令就是 rpm 命令、yum 命令;而后就是 DPKG 包管理器,像 Debain、Ubuntu 等零碎都用,典型的命令比方 dpkg 命令、apt 软件工具。
rpm 包治理命令
常用命令 | 作用 |
---|---|
rpm -qa | 查看已装置的 rpm 包 |
rpm -q pkg_name | 查问某个 rpm 包 |
rpm -q –whatprovides xxx | 显示 xxx 性能是由哪个包提供的 |
rpm -q –whatrequires xxx | 显示 xxx 性能被哪个程序包依赖的 |
rpm -q –changelog xxx | 显示 xxx 包的更改记录 |
rpm -qi pkg_name | 查看一个包的详细信息 |
rpm -qd pkg_name | 查问一个包所提供的文档 |
rpm -qc pkg_name | 查看已装置 rpm 包提供的配置文件 |
rpm -ql pkg_name | 查看一个包装置了哪些文件 |
rpm -qf filename | 查看某个文件属于哪个包 |
rpm -qR pkg_name | 查问包的依赖关系 |
rpm -ivh xxx.rpm | 装置 rpm 包 |
rpm -ivh –test xxx.rpm | 测试装置 rpm 包 |
rpm -ivh –nodeps xxx.rpm | 装置 rpm 包时疏忽依赖关系 |
rpm -e xxx | 卸载程序包 |
rpm -Fvh pkg_name | 降级确定已装置的 rpm 包 |
rpm -Uvh pkg_name | 降级 rpm 包(若未装置则会装置) |
rpm -V pkg_name | RPM 包详细信息校验 |
yum 包治理命令
常用命令 | 作用 |
---|---|
yum repolist enabled | 显示可用的源仓库 |
yum search pkg_name | 搜寻软件包 |
yum install pkg_name | 下载并装置软件包 |
yum install –downloadonly pkg_name | 只下载不装置 |
yum list | 显示所有程序包 |
yum list installed | 查看以后零碎已安装包 |
yum list updates | 查看能够更新的包列表 |
yum check-update | 查看可降级的软件包 |
yum update | 更新所有软件包 |
yum update pkg_name | 降级指定软件包 |
yum deplist pkg_name | 列出软件包依赖关系 |
yum remove pkg_name | 删除软件包 |
yum clean all | 革除缓存 |
yum clean packages | 革除缓存的软件包 |
yum clean headers | 革除缓存的 header |
dpkg 包治理命令
常用命令 | 作用 |
---|---|
dpkg -c xxx.deb | 列出 deb 包的内容 |
dpkg -i xxx.deb | 装置 / 更新 deb 包 |
dpkg -r pkg_name | 移除 deb 包 |
dpkg -P pkg_name | 移除 deb 包(不保留配置) |
dpkg -l | 查看零碎中已装置 deb 包 |
dpkg -l pkg_name | 显示包的大抵信息 |
dpkg -L pkg_name | 查看 deb 包装置的文件 |
dpkg -s pkg_name | 查看包的详细信息 |
dpkg –unpack xxx.deb | 解开 deb 包的内容 |
apt 软件工具
常用命令 | 作用 |
---|---|
apt-cache search pkg_name | 搜寻程序包 |
apt-cache show pkg_name | 获取包的概览信息 |
apt-get install pkg_name | 装置 / 降级软件包 |
apt-get purge pkg_name | 卸载软件(包含配置) |
apt-get remove pkg_name | 卸载软件(不包含配置) |
apt-get update | 更新包索引信息 |
apt-get upgrade | 更新已装置软件包 |
apt-get clean | 清理缓存 |
离线文档
除了上述内容,本次梳理还把那些高频实用的 Linux 命令给提了进去,并且做成了两种模式的离线文档,别离为 PDF 格局和高清图片格式,PDF 不便电脑查看,高清图片则不便用手机查看,这样没事的功夫都能够拿进去在手机上瞅一瞅、看一看。
PDF 文档大抵长这样:
高清图片差不多长这样,有十几张,蕴含了几百条命令:
该文档 GitHub https://github.com/rd2coding/Road2Coding 曾经收录。
后 记
另外最近花了大把力量,把自用的编程学习资源做了个大整顿。
都是纯肝货,目录如下。
该内容 GitHub https://github.com/rd2coding/Road2Coding 曾经收录,外面还有我整顿的 6 大编程方向的自学路线 + 知识点大梳理、 我的简历 、 面试考点 、 几本硬核 pdf 笔记 ,以及 我的程序员人生,欢送 star。
整顿不易,欢送反对,下期见!