【Linux】分享一些服务器运维常用的Shell工具命令

跨主机文件传输:

bash 复制代码
rsync -av -e "ssh -p 10022" apache-tomcat-9.0.91 --exclude="logs" root@192.168.223.198:/root

目标服务器上打印目录的大小(一般用于文件传输监控):

bash 复制代码
while(1>0); do echo `date +'%Y/%m/%d %H:%M:%S'`"=====>"`du -sh dirName`; sleep 60; done

一键杀死全部目标进程:

bash 复制代码
ps -ef| grep java| grep keyWord| grep -v grep| awk '{print $2}'| xargs kill -9

获取日期的相关命令:

bash 复制代码
# 获取昨天的日期
date -d 'yesterday' # 或 date -d 'last day'
 
# 获取明天的日期
date -d 'tomorrow' # 或 date -d 'next day'
 
# 获取上个月的日期
date -d 'last month'
 
# 获取下个月的日期
date -d 'next month'
 
# 获取上一年的日期
date -d 'last year'

# 获取下一年的日期
date -d 'next year'

查找文件和目录:

bash 复制代码
# 文件查找
find / -type f -name "fileName" 

# 目录查找
find / -type d -name "dirName" 

删除指定目录下30天之前的日志(注意日志格式匹配):

bash 复制代码
find /app/logs/backup -name "servInvoke.log.20*.gz" -type f -mtime +30 -exec rm -f {} \;

对历史日志文件进行压缩(注意不要把当前未作按日期分割的实时日志文件压缩了!):

bash 复制代码
find /app/logs -name "servInvoke.log.20*" -type f ! -name "*.gz" -exec gzip {} \;
相关推荐
穷人小水滴6 分钟前
使用 WebRTC 实现局域网投屏: PC (GNOME ArchLinux) -> 平板 (Android)
android·linux·webrtc·浏览器·js·gnome·投屏
恋红尘8 分钟前
K8S 控制器-资源调度-叩丁狼
linux·docker·kubernetes
weixin_537590459 分钟前
《C程序设计语言》练习答案(练习1-7)
linux·c语言·算法
123过去2 小时前
ike-scan使用教程
linux·测试工具
疯狂吧小飞牛8 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈9 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
todoitbo10 小时前
用虚拟局域网打通 Win/Mac/Linux 三端:跨设备协作的实用方案
linux·运维·macos
源远流长jerry10 小时前
RDMA 基本操作类型详解:从双端通信到单端直访
linux·网络·tcp/ip·ip
Sylvia-girl11 小时前
Linux下的基本指令1
linux·运维·服务器
wyt53142911 小时前
Redis的安装教程(Windows+Linux)【超详细】
linux·数据库·redis