shell - 如何在 cron 选项卡中设置环境变量并在 shell 脚本中获取这些值
问题描述
我需要从 cron 选项卡中配置一些值并将它们放入我的 shell 脚本文件中。我在下面解释我的脚本文件。
#!/bin/sh
#=====================================================================
# Set the following variables as per your requirement
#=====================================================================
# Database Name to backup
MONGO_DATABASE="ubot-db"
# Database host name
MONGO_HOST="127.0.0.1"
# Database port
MONGO_PORT="27017"
# Backup directory
BACKUPS_DIR="/home/subhrajp/UBOT/"
# Database user name
DBUSERNAME="username"
# Database password
DBPASSWORD="passw0rd"
# Authentication database name
DBAUTHDB="admin"
# Days to keep the backup
DAYSTORETAINBACKUP="14"
#=====================================================================
TIMESTAMP=$(date +'%Y_%m_%d_%H-%M-%S')
BACKUP_NAME="mongobackup_$TIMESTAMP"
echo "Performing backup of $MONGO_DATABASE"
echo "--------------------------------------------"
# Create dump
mongodump --host $MONGO_HOST -d $MONGO_DATABASE --port $MONGO_PORT --out "${BACKUPS_DIR}${BACKUP_NAME}"
echo "--------------------------------------------"
echo "Database backup complete!"
在这个文件中,我对BACKUPS_DIR
值进行了硬编码,但我需要从 crontab 进行配置,因为我将此文件作为 cron 作业运行。我的 crontab 设置如下。
* * * * * /home/subhrajp/UBOT/git/uBot-Hosting/container/app/mean-stack/node-js/utils/backup-mongodb.sh
在这里,我的要求是我需要从 crontab 配置一些值作为环境变量,并在上面给出的 shell 脚本中获取这些值。
解决方案
推荐阅读
- html - 有没有一种简单的方法可以一次更改多个图像源?
- visual-studio - 在 VisualStudio 2019 中创建 OutLook VSTO 加载项项目,如何显示图像代替默认功能区文本?
- bash - 如果文件中的差异字符与提供的模式不同,则停止计数
- c# - 尝试解析 Post 请求返回的 HTML
- c# - 如何监控 Stream 的下载进度
- ios - CIFilter 链的性能改进?
- sas - 动态划分多列
- python - 从 channel.history 的消息中获取创建日期
- json - 如何在 BigQuery 中检查键的值是 ARRAY 还是 STRUCT
- angular - 量角器:失败:未找到元素。7030ms 后等待超时