1.通过进程名kill
ps -ef| grep tomcat|awk '{print $2}'|xargs kill -9
2.通过端口查看应用程序(例如:查找6028端口)
ps -ef | grep `netstat -anpl | grep 6028 | awk NR==1'{ print $7 }' | grep -o "[0-9]*[0-9]" `
3.Window强制关闭进程并删除文件
tasklist 查询进程
taskkill /f /t 强制关闭进程和子进程
@echo offecho 清除搜狗广告程序,稍等......cd C:\Program Files (x86)\SmartCloudInput\1.4.4.10311taskkill -f -t -im SCHelper.exetaskkill /f /t /pid 端口tasklist | findstr "SCHelper.exe"del /f /s SCHelper.exeecho 清除完成!
4.清空文件内容(产生日志文件过大,占用磁盘空间),可以与定时任务结合使用
每天早上6点执行 0 6 * * * sh /log/CleanLogFile.sh
#!/bin/bashpath=/logfilename=$path/BigLog.txt#搜索大于10KB的文件#-size +10k#搜索小于10KB的文件#-size -10k#搜索等于10KB的文件#-size 10kif [ $# -ne 1 ] then #echo "默认设置文件大小为500M" filesize=500M else filesize=$1fi echo "设置清除文件大小:$filesize"if [ -f "$filename" ]; then rm -rf $filename echo "原始文件已删除"else echo "$filename不存在"fi find $path -name "*.*" -size +$filesize -exec ls -lh {} \; | awk '{ print $5,$9}' > $filenamefor line in `cat $filename`do #如果有匹配的内容则立即返回状态值0 echo "$line" | grep -q "$path" #$? 是指上一条命令的执行状态, 0就是正常 if [ $? -eq 0 ] then #获取文件类型 filetype=${line#*.} if [ $filetype == "zip" ];then echo "rm -rf $line" rm -rf $line else echo "执行清空命令 cat /dev/null > $line" cat /dev/null > $line fi fidone
编写shell定时任务
执行命令:
[root@localhost ~]# crontab -e
10 0 * * * /log/CleanLogFile.sh >/dev/null 2>&1
查看定时任务:
[root@localhost ~]# crontab -l
10 0 * * * /log/CleanLogFile.sh >/dev/null 2>&1
5.从Linux备份文件到Windows机器
shell 脚本
#!/bin/bash#SHELL_DAY=$(date '+%Y%m%d%H%M%S')SHELL_DAY=$(date '+%Y%m%d')BACK_DIR="/data/sql_bak"HOST="192.168.101.1"ACCOUNT="root"MYSQLDUMP="/usr/local/mysql5.7/bin/mysqldump"${MYSQLDUMP} -u${ACCOUNT} -p'root123' personal > ${BACK_DIR}/test/personal_${SHELL_DAY}.sql
从A机器到B机器备份文件数据,为了保护数据不被丢失或者A机器中的数据被误删后,公司系统能正常运行。如果是Linux机器之间的拷贝可以写一个shell拷贝脚本再新建crontab任务即可完成,如果是window机器之间的拷贝可以写一个批处理再新建个任务计划即可,但是从Linux拷贝到window机器,会想到使用ftp登陆进行拷贝,发现ftp connect :连接超时,查询Linux机器ftp启动正常,生无可恋的样子,此时我们可以借助psftp工具来完成自动下载的批处理脚本
psftp、bat脚本、sftp.txt 3个放在同一目录,否则执行过程会找不到对应文件
1.编写bat脚本
用户名密码登陆
@echo offcd D:\toolspsftp 机器IP -l 用户 -pw 密码 -b "sftp.txt"
配置ssh免密登陆
@echo offcd D:\toolssftp -b "sftp.txt" root@机器IP
2.sftp.txt文件中命令
lcd C:\sqlbackcd /home/www/sql_bakmget abc*rm abc*bye
3.bat脚本、sftp.txt都已经弄好,接下来配置window定时任务