Skip to content

操作命令

基础命令

sh
mkdir xxx						# 创建文件夹
touch xxx						# 创建文件
chmod u+x *.sh					# 把 .sh 结尾的文件变成可执行文件
find / -name xxx				# 查找文件路径
sudo netstat -tuln| grep 8080	# 查看 8080 端口占用情况

ps -ef | grep tomcat			# 查找以 tomcat 运行的项目
ps -ef | grep jar				# 查找以 jar 运行的项目
ps -ef | grep node				# 查到以 node  运行的项目

# 查看最后 100 行并保存到文件
tail -n 100 ./logs/catalina.out > /root/20230711.txt
# 获取指定时间断日志到文件(先看日志日期格式yyyy-MM-dd 还是 yyyy.mm.dd)替换日期区间格式
sed -n  '/2024-12-12 17:46:/,/2024-12-12 17:50:/p' /soft/apache-tomcat-8.5.98-8080-rzdp/logs/catalina.2024-12-12.out > /root/20241212.txt
sh
kill - 9 $(ps -aux|grep nginx-ui|grep -v grep|awk '{print $ 2}')
ps -aux # 显示系统中所有的进程信息
grep nginx-ui # 从进程中筛选出所有包含 nginx-ui 的行
grep -v grep # 排除掉 grep 本身(因为上一步的 grep 命令也会被显示出来)
awk '{print $2}' # 使用 awk 工具提取出匹配行的第二个字段,通常就是进程的 PID

压缩解压

tar 是磁带归档(Tape ARchive)工具。

  • -c 表示创建一个新的归档文件(压缩)。
  • -z 表示使用 gzip 压缩格式进行解压缩。
  • -x 表示执行解包操作(解压)。
  • -v 表示显示详细的解压缩过程信息。
  • -f 后面接要解压缩的文件(这里是 xxx.tar.gz),表示指定操作的文件对象。
  • -C 后面跟路径 -C /soft/tools,即解压文件至指定目录
压缩解压类型/说明
tar cvf xxx.tar 被压缩目录tar xvf xxxtar(是打包非压缩)
gzip xxxgunzip xxx.gz
gzip -d xxx.gz
gz
tar –czf xxx.tar.gz 被压缩目录tar -zxvf xxxtar.gz
tar -cvf xxx.tar 被压缩目录 然后 xz -z xxx.tar(如果要保留被压缩文件加上 ==k== 参数)分次解压 xz -d xxx.tar.xz + tar -xvf xxx.tar.xz
或直接解压 tar xvJf xxx -C /soft/tools
tar.xz(两层,外面是 xz 压缩,里层是 tar 打包)
zip -r xxx.zip 被压缩文件unzip xxx.zipzip
rar xxx.rar 被压缩目录rar x xxx.rarrar

系统命令

shell
poweroff				# 关机
reboot					# 重启
sudo shutdown -h now	# 关机命令
shutdown -h 10			# 定时关机

systemctl status firewalld				# 查看防火墙状态 
systemctl start firewalld				# 开启防火墙
systemctl stop firewalld				# 关闭防火墙
systemctl restart firewalld				# 重启防火墙
firewall-cmd --reload					# 重新加载防火墙(开放或关闭端口后执行)

firewall-cmd --query-port=8080/tcp							# 查看 8080 端口是否开放(防火墙开启状态下)
firewall-cmd --zone=public --add-port=8080/tcp --permanent	# 开放 8080 端口(8080-8099 可以批量开放)
firewall-cmd --zone=public --remove-port=8080/tcp --permanent # 关闭 8080 端口
netstat -tulnp|grep :3306 netstat -tulpn|grep <>		  # 查看端口 3306 被什么程序占用
telnet <ip> <端口>									 # 测试端口通不通 telnet inkwell.top 80

systemctl list-unit-files --type=service grep enabled	# 查看所有自启服务
systemctl disable <服务>								# 关闭自启服务

hostnamectl set-hostname <主机>	# 修改主机名(无需重启,新开窗口即可生效)

系统相关

sh
uname -a	# 查看系统信息
cat /proc/cpuinfo|grep name |cut -f2 -d: |uniq -c		# 查看 cpu 型号
cat /proc/cpuinfo|grep "physical id"|sort|uniq|wc -l	# 查看物理 cpu 个数
cat /proc/cpuinfo|grep "cpu cores"|uniq					# 查看 cpu 即核数
cat /proc/cpuinfo|grep "processor"|wc -l				# 查看逻辑 CPU 的个数

cat /proc/meminfo grep MemTotal /proc/meminfo		# 查看内存总量(Mem 是内存条--高效, Swap 是虚拟内存--低效)
free -h free -m										# 查看内存使用情况
dmidecode|grep -A5 "Memory Device"|grep Size|grep -v Range	# 查看内存插槽数及内存大小
dmidecode|grep -A16 "Memory Device"|grep 'Speed'			# 查看内存的频率

# ssh 连接别的服务器执行命令
ssh -p 22 root@36.134.59.209 'rm -f /soft/apache-tomcat-8.5.72-8081/webapps/xazl.war'

wget

wget 是一个用于从网络上下载文件的命令行工具,支持 HTTP、HTTPS 和 FTP 协议。它是 GNU 项目的一部分,非常适合在终端或脚本中使用,尤其是在需要批量下载文件或在不稳定的网络环境下进行下载时

  • -O :将下载的文件保存为指定的文件名。
  • -c:断点续传。
  • -r:递归下载。
  • -l :递归下载的层级深度。
  • --limit-rate=<rate>:限制下载速度。
  • -b:后台下载。
  • - e <command>:执行一个命令,例如设置代理。

YUM命令

yum常用命令

sh
yum list installed					# 查看已安装软件包
yum list installed | grep <>		# 查看指定名称软件包
yum update  or  yum update <>		# 更新所有软件包 / 指定更新
yum remove <>						# 删除软件包
yum info <>						# 显示软件包信息

yumdownloader --destdir /root openvpn	# 只下载rpm包不安装,需要先安装yum-utils,可选参数--destdir指定下载路径

yum 源设置为阿里源

官方文档

shell
# CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# 或者
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# 删除缓存数据
yum clean all
# 创建元数据缓存
yum makecache

启用 EPEL 仓库

EPEL(Extra Packages for Enterprise Linux)仓库提供了许多额外的软件包

shell
# 先查看是否已经安装
yum repolist enabled | grep epel
# 如果没有那就开始安装
yum install epel-release

RPM命令

RPM命令是Linux系统中用于管理软件包的一个工具,主要用于安装、升级、卸载和查询软件包。

sh
# RPM命令的基本用法
rpm -ivh  # 命令安装软件包。例如:rpm -ivh filename.rpm
rpm -e    # 命令卸载软件包。例如:rpm -e package_name。
rpm -Uvh  # 命令升级软件包。例如:rpm -Uvh filename.rpm。
rpm -qpi  # 命令查询软件包的描述信息。例如:rpm -qpi filename.rpm。
rpm -qpl  # 命令列出软件包内的文件信息。例如:rpm -qpl filename.rpm。
rpm -qf   # 命令查询指定文件属于哪个RPM软件包。例如:rpm -qf filename.rpm。

# RPM命令的选项和参数
-i, --install # 安装软件包。
-e, --erase   # 卸载软件包。
-U, --update  # 升级或安装软件包。
-v, --verbose # 提供更详细的输出。
-h, --hash	  # 显示安装进度条。
-q, --query	  # 查询软件包信息。
--test	      # 测试安装,检查依赖关系和冲突。
--nodeps	  # 忽略依赖关系,强制安装或卸载。

# RPM命令的常见问题解决方法
--nodeps 	# 选项可以忽略依赖关系,但可能会导致软件无法正常运行。
--test 		# 选项可以测试安装,检查依赖关系和冲突,但不实际进行安装。
-qa 		# 可以查询所有已安装的软件包