在我的shell脚本中,我定义了几条需要记录为INFO,WARN或ERROR的消息。字符串bash中的参数替换
的消息如下:
###### This may not be correct syntax as I need to know this #######
BACKUP_INFO="File {} is compressed at path {}."
ERROR_FILE_NOT_EXIST="File {} doesn\'t exist."
OTHER_ERROR="Cannot backup File {}, Reason: {}"
我有一个方法来记录在文件中这样的信息:
function print_info() {
echo -e "$(date +'%F %T') ${SCRIPTNAME}: INFO: ${*}" | tee -a ${LOGFILE};
}
现在我需要通过我的消息的方法打印信息在这样一个第一个参数应放在第一个{}处,第二个参数放置在第二个{}处,等等。
即使我想声明我的消息
BACKUP_INFO="File $FILE_NAME is compressed at path $BACKUP_DIR."
但问题是变量FILE_NAME和BACKUP_DIR是在方法内部,消息是全局定义。
有点我想用它,如下图所示:
print_info $BACKUP_INFO $FILE_NAME $FILE_PATH
使输出应是
2015-03-13 07:05:05 : INFO: File /opt/mgtservices/relay.log is compressed at path /root/backup
我需要知道正确的语法,我怎么能做到这一点。