首页 > 系统相关 >掌握Shell脚本,让你的工作效率翻倍!

掌握Shell脚本,让你的工作效率翻倍!

时间:2023-09-05 21:37:41浏览次数:35  
标签:status Shell log server 工作效率 var echo backup 翻倍

掌握Shell脚本,让你的工作效率翻倍!_工作脚本

在工作中,我们经常需要使用Shell脚本来自动化一些重复性的任务。今天,我来分享一些工作中常见的Shell脚本,希望对大家有所帮助。

  1. 检查服务器状态并记录日志。

这个脚本可以用于定期检查服务器的状态,并在出现异常时发送邮件通知管理员。通过记录日志,我们可以追踪问题的发生和解决过程。

#!/bin/bash
# 定义邮件地址和接收人信息
to="[email protected]"
from="[email protected]"
subject="Server Alert"
# 检查CPU、内存、磁盘等系统指标
echo "Checking server status..." >> /var/log/server_status.log
top -b -n1 | head >> /var/log/server_status.log && echo "CPU usage is normal." >> /var/log/server_status.log || (echo "CPU usage is abnormal!" >> /var/log/server_status.log && mail -s $subject $to < server_status.log)
free -m >> /var/log/server_status.log && echo "Memory usage is normal." >> /var/log/server_status.log || (echo "Memory usage is abnormal!" >> /var/log/server_status.log && mail -s $subject $to < server_status.log)
df -h >> /var/log/server_status.log && echo "Disk usage is normal." >> /var/log/server_status.log || (echo "Disk usage is abnormal!" >> /var/log/server_status.log && mail -s $subject $to < server_status.log)
  1. 备份指定目录到云存储。

这个脚本可以将指定目录的内容备份到云存储中,以保障数据的安全性。

#!/bin/bash
# 定义备份目录和云存储相关信息
backup_dir="/path/to/backup"
cloud_storage="s3://mybucket"
# 执行备份命令并记录日志
echo "Starting backup..." >> /var/log/backup.log
tar zcvf $backup_dir/backup-$(date +%Y%m%d%H%M%S).tar.gz --exclude=* --warning=no-file-changed $backup_dir && echo "Backup completed." >> /var/log/backup.log || { echo "Backup failed!"; exit 1; }
aws s3 sync $backup_dir s3://$cloud_storage --delete --profile=myprofile >> /var/log/backup.log 2>&1 || { echo "Sync to cloud storage failed!"; exit 1; }
  1. 批量处理文件名。

这个脚本可以用于批量修改文件名,例如将文件名中的空格替换为下划线。通过编写一个循环语句,我们可以一次性处理多个文件。

#!/bin/bash
# 定义要修改的文件目录和规则
source_dir="/path/to/source"
target_dir="/path/to/target"
replacement="_"
# 遍历目录下的所有文件,并进行重命名操作
for file in $source_dir/*; do new_name=$(echo "$file" | tr ' ' "$replacement"); mv "$file" "$target_dir/$new_name"; done

这些只是一些常用的Shell脚本示例,当然在实际工作中还有很多其他类型的脚本可以使用。希望这些示例能够帮助大家更好地理解和应用Shell脚本。

标签:status,Shell,log,server,工作效率,var,echo,backup,翻倍
From: https://blog.51cto.com/u_15801829/7379288

相关文章

  • HBASE shell操作CLI
    server查看hbase(main)>statushbase(main)>version创建命名空间:namespace指的是一个表的逻辑分组,同一组中的表有类似的用途,相当于关系型数据库中的database创建该命名空间的表:hbase(main):060:0>create_namespace'test1'hbase(main):061:0>create'test1:test','f1',�......
  • • • ​​​​ 目录​ • shell命令概述 • 获得命令帮助 • Linux命令行的格式 •
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • • • ​​​​ 目录​ • shell命令概述 • 获得命令帮助 • Linux命令行的格式 •
    目录shell命令概述获得命令帮助Linux命令行的格式文件和目录管理Bash的命令历史Bash的命令别名重定向vim文本编辑器vim编辑器的工作模式命令模式中的基本操作末行模式中的基本操作用户和组账号概述用户账号文件——password用户账号文件——shadow组账号文件—group、gshadow添加用......
  • • • ​​​​ 目录​ • shell命令概述 • 获得命令帮助 • Linux命令行的格式 •
    目录shell命令概述获得命令帮助Linux命令行的格式文件和目录管理Bash的命令历史Bash的命令别名重定向vim文本编辑器vim编辑器的工作模式命令模式中的基本操作末行模式中的基本操作用户和组账号概述用户账号文件——password用户账号文件——shadow组账号文件—group、gshadow添加用......
  • 工作效率
    标题:计算机科技提升工作效率的重要性与方法引言:在当今数字化时代,计算机科技已经成为了改变人们工作方式和提高工作效率的重要工具。计算机的普及和应用使得各行各业都能够更高效地完成任务,加速工作进程,节省时间和资源。本文将探讨计算机科技对提升工作效率的重要性,并介绍一些使用计......
  • Shell脚本Kill并重启进程
    #!/bin/bashJAR_PATH=kill.jarPID=$(ps-ef|grep$JAR_PATH|grep-vgrep|awk'{print$2}')if[-z$PID]thenecho"serviceisalreadystopped"elseecho"kill$PID"kill-9$PIDfisleep1nohupjava-jar......
  • 让linux shell显示命令执行结果
    vscode的shell可以用颜色来标记命令执行是否成功如图,蓝色圆点表示成功,红色表示失败。但是默认的shell不可以。通过设置PS1可以实现这个功能。在.bashrc文件中找到:if[-n"$force_color_prompt"];thenif[-x/usr/bin/tput]&&tputsetaf1>&/dev/null;then #We......
  • 1.14 手工插入ShellCode反弹
    PE格式是Windows下最常用的可执行文件格式,理解PE文件格式不仅可以了解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,而有些技术必须建立在了解PE文件格式的基础上,如文件加密与解密,病毒分析,外挂技术等,本次的目标是手工修改或增加节区,并给特定可执行......
  • 1.14 手工插入ShellCode反弹
    PE格式是Windows下最常用的可执行文件格式,理解PE文件格式不仅可以了解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,而有些技术必须建立在了解PE文件格式的基础上,如文件加密与解密,病毒分析,外挂技术等,本次的目标是手工修改或增加节区,并给特定可执......
  • GraalVM 打包 Java ShellcodeLoader 为可执行文件
    GraalVM打包JavaShellcodeLoader为可执行文件url:https://app.yinxiang.com/fx/a6667249-7c5e-40dd-8bf6-e474fc844163title:GraalVM打包JavaShellcodeLoader为可执行文件date:2023-03-0212:37:26打包成Jar包先上项目地址:https://github.com/yzddmr6/Java-Sh......