博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
shell模板-跨目录执行,彩色输出,临时文件,行遍历文件
阅读量:6386 次
发布时间:2019-06-23

本文共 784 字,大约阅读时间需要 2 分钟。

参数检查

#!/bin/bashset -eif [ ! -n "$1" ];then    echo "Usage: #cmd <> []"    exitfi

跨目录执行脚本但维持脚本与"."的相对位置不变

SH_PATH=$(cd $(dirname $0);pwd)cd ${SH_PATH}

彩色日志输出

COLOR_RED='\033[1;31m'COLOR_GREEN='\033[1;32m'COLOR_NC='\033[0m'Log_INFO(){    msg=$1    echo -e "${COLOR_GREEN} [$(date "+%Y-%m-%d %T %N") INFO ] ${COLOR_NC}: ${msg} "}Log_ERR(){    msg=$1    echo -e "${COLOR_RED} [$(date "+%Y-%m-%d %T %N") ERROR] ${COLOR_NC}: ${msg} "}

使用临时文件, 防止使用的文件与已知文件重名而被替换

TEMP_DIR=$(mktemp -dt temp_dir.XXXX)TEMP_FILE=$(mktemp -t temp_file.XXXX)

输出到标准输出的同时写入到文件

date |tee ${TEMP_FILE}

逐行处理文本文件,注意文本要set fileformat=unix确保格式正确

cat $1|while read LINEdo    echo "${LINE}"    FILE_NAME=$(basename "${LINE}")    if [ "${FILE_NAME}" == "one_file" ];then        Log_INFO "eq"        Log_ERR "noeq"    fidone

转载地址:http://xebha.baihongyu.com/

你可能感兴趣的文章
Activity平移动画
查看>>
使用主机ip地址绑定GooglAppEngine站点
查看>>
oracle重新启动步骤
查看>>
JavaScript 的同源策略
查看>>
文件系统的两种文件索引模式extent和blockmap
查看>>
DLP测试样本
查看>>
用户空间与内核空间数据交换的方式(zz)
查看>>
C Statements
查看>>
高性能ASP.NET站点构建之简单的优化措施
查看>>
“习惯性思维”引起的血案
查看>>
Myeclipse快捷键
查看>>
rundll32.exe文件详解
查看>>
线程安全的Generic Dictionary
查看>>
Oracle 并行原理与示例总结
查看>>
freebsd+postfix+mysql+authdaemon+sasl2+bind9
查看>>
Yii2与Yii1的模块中Layout使用区别
查看>>
2003迁移到 Server 2008
查看>>
配置安全的windows2003服务器
查看>>
Java基础知识回顾-6
查看>>
运维监控利器Nagios:概念、结构和功能
查看>>