Linux系统常见的命令
时间:2023-3-2 22:34 作者:wen 分类: Linux
[TOC]
150个命令、开发、运维、测试、安全
线上查询和帮助 2个
man
查看命令帮助,命令词典
help
查看Linux系统内置命令的帮助
文件和目录操作命令 18个
ls
查看当前目录的内容以及内容属性的信息
- -l 以详细信息方式显示内容
- -a 查看所有文件,包括隐藏文件
cd
改变当前工作目录
- . 当前目录
- .. 当前目录的上一级目录
- / 根目录
- ~ 主目录、家目录
- -上一次进入的目录
cp
复制、拷贝文件或目录
- -r 递归复制
pwd
显示当前工作路径
mv
移动文件或目录、重命名
rm
删除目录或文件
- -r 递归删除
- -f 强制删除,不需要确认
- -i 删除前逐一确认
mkdir
创建目录
- p 逐层的去创建
mkdir -p top/wenxk
rmdir
删除一个空目录
touch
创建一个空文件
rename
重命名文件
find
文件查找
tree
需要安装yum install -y tree
以树型显示目录
md5sum
生成和校验文件的md5值
chattr
设置隐藏权限属性
- + 增加权限
- - 减少权限
- i root权限, 某些重要的内容不让你修改。/etc/shadow
- a 只能像文件中写入, 不能删除
lsattr
查看隐藏权限属性
file
显示文件类型
查看文件内容以及内容处理 21个
echo
输出重定向
- > 覆盖的方式写入
- >> 追加的方式写入
cat
查看文件
cat>d.txt<<EOF
当文本写入,输入EOF结束
tac
查看文件内容,从文件的最后一行开始显示
nl
显示行号查看文件
more
分页查看
less
查看文件
head
从头开始查看
tail
打印日志
- -n 从几行开始
- -f 实时查看
cut
用于显示每行从开头算起 num1 到 num2 的文字
wc
统计行数
diff
比较文件差异
vimdiff
vim比较文件差异
tr
用于转换或删除文件中的字符。
vi/vim
文本编辑器
grep
文件查找
rev
反转一个或多个文件的行
文件的压缩和解压 4个
tar
压缩和解压
- -z 通过gzip压缩或解压缩
- -c 创建一个新的压缩包
- -v 显示执行过程
- -f 指定压缩文件的名称
- -x 解开tar格式包
- -C 指定解压的目录路径
- --exclude=PATH 打包的时候排除不需要处理的文件或目录
- -h 打包软连接指向的源文件
- -t 不解压查看压缩包内容
- -p 保持文件属性不变(原有属性)
- -P 危险,以绝对路径打包
- -N 用于增量打包(仅打包指定日期内新增的文件)
- -j 通过bz2压缩或解压缩
- -Z compress压缩格式
- -r 向已经存在的压缩包新增文件
zip
压缩
- -q 不显示执行过程
- -r 递归处理
- -z 给压缩文件加上注释
- -v 显示执行过程
- -d 删除压缩包内文件
- -n<后缀> 不压缩具有特点后缀的文件
- -e 加密压缩文件
- -u 更新或追加文件到压缩包
- -f 更新现有的文件
- -u 更新文件,没有就追加
- -m 将文件压缩有删除源文件
- -o 保存属性不变
unzip
解压
gzip
压缩
- -d 解压缩文件
- -v 显示执行过程
- -l 列出压缩文件的内容信息
- -c 将内容输出到标准输出,不改变源文件
- -r 对目录下所有文件递归进行压缩操作
- -t 测试, 检查压缩文件的完整性
- -<数字> 压缩率, 手动设置1-9, 数字越大压缩率越高,默认的压缩为6
rar
压缩
unrar
解压
文件传输
scp
文件远程复制传输, 不支持断点续传
- -C 压缩传输
- -r 目录递归复制
- -P 指定传输端口号
- -p 传输后保留文件的原属性
- -q 不显示传输进度
- -l 指定传输时候占用的带宽。Kbit/s
ssh
远程登录方式
rsync
文件远程复制传输, 增量支持断点
- -a 以递归的方式传输文件, 并保存所有文件的属性
- -v 详细模式输出, 显示进度信息
- -z 传输时启动压缩, 提供传输效率
- -p 保持文件属性不变
- -P 显示同步过程以及传输的进度信息
- -t 保持文件时间信息保持不变
- -exclude=PATH 排除文件
信息显示的命令
uname
显示系统信息
- -a 显示全部的信息,包括内核名称、主机名、操作系统版本、处理器类型和硬件架构等。
hostname
显示主机名
dmesg
用于显示开机信息
uptime
显示系统负载
stat
用于显示 inode 内容
du
查看磁盘空间
- -sh 计算目录大小
df -Th
查看分区使用情况以及文件系统类型
top
实时监控系统的进程和系统资源占用情况
free
用于显示内存状态
- -h 以合适的单位显示内存使用情况,最大为三位数,自动计算对应的单位值。
date
看日期
cal
看日历
文件查找和搜索
find
查找目录下的文件
find /etc/ -type -f
查找普通文件
which
显示命令路径的全路径, 可以查看命令文件所在的目录路径
whereis
显示命令以及相关文件的路径
locate
快速的定位文件的路径
用户和用户组管理
useradd
添加用户
- -d
useradd -d /home/test -m test
指定家目录 - -m 没有这个目录就创建
- -M 不要自动建立用户的登入目录。
- -g
useradd gitlab -g git
分配用户组 - -s
useradd test -s /bin/bash
指定用户shell环境
userdel
删除用户
- -r 删除家目录
usermod
修改用户信息
- -c
usermod -c "测试" test
修改用户注释信息 - -d
usermod -d /home/test1 test
修改家目录地址 - -s 修改shell环境
- -p 修改密码
- -l
usermod -l test1 test
修改用户名 - -u 修改UID
- -G 修改GID
- 使用-e设置账户密码有效期,默认为空,密码账户有效;使用-f设置密码有效期超过后多少天锁定账户,默认为空,密码不失效。-e后设置的是有效期日期或者从1970年1月1日开始计算的天数。
- -L 锁定账户,锁定后root账户可以切换到该用户,但是直接登录会验证失败。
- -U 参数解锁用户,用户锁定后/etc/shadow中密钥字段自动加了一个叹号,解锁后去除。
groupadd
添加组
id
查看用户UID和GID
passwd
修改密码
- passwd 修改当前登陆用户密码
- passwd 用户 修改用户密码
chage
密码的实效管理,用来修改帐号和密码的有效期
su
切换系统中不同的用户
- su test 不加载环境变量
- su - test 加载环境变量
sudo
普通用户提权操作
visudo
修改/etc/sudoers
基本的网络管理命令
ip
与ifconfig类似,用于配置和管理网络接口。它还支持更多的功能,如多路径路由、虚拟网络接口和隧道等。
ping
用于检测主机
route
用于管理和查看系统路由表,包括添加、删除、修改和显示路由信息。
telnet
用于远端登入
ssh
远程登陆
wget
从Web下载文件的命令行工具
curl
从Web下载文件的命令行工具
ifconfig
用于配置和管理网络接口,包括启用或禁用网络接口、修改IP地址、子网掩码和广播地址等。
netstat
用于查看网络连接和套接字状态。
ss
用于显示更详细的网络连接和套接字信息,它比netstat更快速和功能更强大。
ifup
启动网络接口
ifdown
关闭网络接口
nslookup
用于从 DNS 服务器查询域名、IP 或其他 DNS 记录信息
dig
用于从 DNS 服务器查询域名、IP 或其他 DNS 记录信息
进阶的网络命令
nmap
免费的开源网络扫描和侦察工具,用于扫描主机和收集有关主机的详细信息
lsof
系统级的监控、诊断工具
iftop
是一款实时流量监控工具
mail
发送邮箱
host
常用的域名解析工具,可以用来测试域名系统工作是否正常
tcpdump
一个抓包工具,用于抓取网络中传输的数据包
traceroute
用于显示数据包经过的路由器的ip地址
磁盘管理命令
fdisk
分区工具
mount
磁盘挂载命令
unmount
用于卸除文件系统
fsck
检查文件系统并尝试修复系统的错误
dd
用于读取、转换并输出数据
mkfs
格式化分区
mkswap
用于设置交换区
swapon
用于激活Linux系统中交换空间
swapoff
用于关闭系统交换区
sync
可以强制将内存中的文件缓冲写入磁盘,更新块信息
lsblk
命令列出所有磁盘和分区的信息
系统权限以及用户授权相关
chown
用于修改文件或目录的拥有者
- R 递归修改
- chown 用户名 文件名
- chwon 用户名:用户组 文件名
chmod
修改文件权限
- chmod + x install.sh 给执行权限
- chmod - x install.sh 去除执行权限
- chmod 777 install.sh 给执行权限
- chmod 600 密码文件的时候注意 rsync
- chmod u=rwx,g=rwx,o=rwx install.sh 给执行权限
- chmod u+s /usr/bin/less 给用户加上一些特殊的权限
- 根据需求谨慎的使用文件属性的权限问题,不要上来就给777
chgrp
修改文件和目录用户组操作。
- R 递归修改
- chgrp 用户名 文件名
umask
用来设置当前用户创建文件或者目录的默认权限。它与chmod的表示正好相反。
查看系统用户登陆信息
w
用于显示目前登入系统的用户信息
who
用于显示目前登入系统的用户信息
whoami
显示当前用户
last
命令用于显示用户最近登录信息
lastlog
用于显示系统中所有用户最近一次登录信息
users
用于显示当前登录系统的所有用户的用户列表
系统内置命令
echo
打印信息
date
打印时间
alias
别名
rpm
rpm 软件管理
- -qa '名称' 查询软件
- -ql '名称' 查询软件路径
yum
CentOS软件基于 RPM 包管理
printf
用来格式化输出
clear
清屏
history
打印命令历史记录
time
常用于测量一个命令的运行时间
nc
实现任意TCP/UDP端口的侦听
exec
调用并执行指令的命令
export
用于设置或显示环境变量
type
用来显示指定命令的类型,判断给出的指令是内部指令还是外部指令
系统管理和监控
systemctl enable
服务管理
chkconfig
用于检查,设置系统的各种服务
vmstat
命令是最常见的Linux/Unix监控工具
mpstat
是一款常用的多核CPU性能分析工具,
iostat
主要用于输出磁盘IO和CPU的统计信息
sar
用于监控Linux系统性能的工具
ipcs
用于查看Linux进程间通信设施的状态,包括消息列表、共享内存和信号量的信息
server
服务管理
iptables
用于配置防火墙规则,包括允许或拒绝特定的网络流量,以及限制流量的带宽等。
firewalld
防火墙
进程管理
ps
查看当前正在运行的进程
pstree
将所有进程以树状图显示
pgrep
根据名称查找进程ID
的命令
kill
控制当前正在运行的进程
pkill
控制当前正在运行的进程
killall
控制当前正在运行的进程
jobs
显示了当前shell环境中已启动的作业状态
fg
用于将后台运行的或挂起的任务(或作业)切换到前台运行
bg
把后台暂停的工作恢复到后台执行
exit
退出
ctrl+d
退出
nice
以更改过的优先序来执行程序
runlevel
看系统的运行级别
init
切换到指定的运行级别
uname -a
查看系统内核版本
clear
清屏
标签: linux