shell模板-跨目录执行,彩色输出,临时文件,行遍历文件
参数检查
#!/bin/bash
set -e
if [ ! -n "$1" ];then
echo "Usage: #cmd <> []"
exit
fi
跨目录执行脚本但维持脚本与"."的相对位置不变
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 LINE
do
echo "${LINE}"
FILE_NAME=$(basename "${LINE}")
if [ "${FILE_NAME}" == "one_file" ];then
Log_INFO "eq"
Log_ERR "noeq"
fi
done
shell模板-跨目录执行,彩色输出,临时文件,行遍历文件的更多相关文章
- php 将网页执行的输出写入到本地文件中
php -f /var/www/html/default/script/lol_score_calculate/calculate.php >>score_calcutelate.log
- Shell(六):输入/输出重定向
重定向的作用是将命令的执行结果输出到指定的文件中. 重定向命令列表如下: 文件描述符 0 通常是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR). 1.输出重 ...
- 【python跨目录调用】结合自己遇到的问题到解决问题,作个记录
写PO的时候,想把page和case 文件分开存不同的文件夹,但是在调用模块的时候就出现了问题.后来终于解决了,记录下 ---------------------------------------- ...
- 以传参的方式执行shell(模板)
以传参的方式执行shell(模板) #!bin/bash # USE: Template # author : xiaowei # -- # state : -name 选项必选,,, -v -m 选 ...
- linux系统可执行文件添加环境变量使其跨终端和目录执行
在命令行终端输入:echo $PATH 回车可打印出PATH变量对应的路径 现有一可执行文件qtFirstC,文件所在目录为:/home/lolors/qtFirstC 此时test只能在此目录下运行 ...
- shell脚本 在后台执行de 命令 >> 文件 2>&1 将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)
命令 >> 文件 2>&1或命令 &>> 文件 将标准输出与错误输出共同写入到文件中(追加到原有内容的后面) # ll >>aaa 2> ...
- bash shell 获取当前正在执行脚本的绝对路径
https://my.oschina.net/leejun2005/blog/150662 http://blog.csdn.net/10km/article/details/51906821 如题, ...
- Linux shell标准输入,标准输出,错误输出
shell中可能经常能看到:1>/dev/null 2>&1 eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{prin ...
- shell脚本就是由Shell命令组成的执行文件,将一些命令整合到一个文件中,进行处理业务逻辑,脚本不用编译即可运行。它通过解释器解释运行,所以速度相对来说比较慢。
shell脚本?在说什么是shell脚本之前,先说说什么是shell. shell是外壳的意思,就是操作系统的外壳.我们可以通过shell命令来操作和控制操作系统,比如Linux中的Shell命令就包 ...
随机推荐
- Visual Studio VS使用freopen调试控制台闪退
解决方法 freopen("CON", "r", stdin); system("pause>nul"); 暂停函数之前,使用f ...
- 获取html下的所有纯文本的方法
第一种是看别人博客的,第二种是自己发现的. 第一种: #-*- coding: utf8 -*- import re html = """ <div class=& ...
- tablespace(表空间) / segment(断) / extent(盘区)/ block(块)/datafile(文件)之间的关系
tablespace(表空间) / segment(断) / extent(盘区)/ block(块)之间的关系 tablespace : 一个数据库划分为一个或多个表逻辑单位,即表空间,每个表空 ...
- 使用html5 Canvas绘制线条(直线、折线等)
使用html5 Canvas绘制直线所需的CanvasRenderingContext2D对象的主要属性和方法(有"()"者为方法)如下: 属性或方法 基本描述 strokeSty ...
- Network Monitoring in Software-Defined Networking :A Review(综述)
来源:IEEE SYSTEMS JOURNAL 发表时间:2018 类型:综述 主要内容:概述了SDN监控的发展,并从收集信息.预处理.传送信息.分析.和描述五个阶段进行解读,并比较了传统网络和SDN ...
- Wordpress显示文章摘要
放在文章的循环里: <?php if (!empty($post->post_excerpt) ) { //如果文章有摘要则输出摘要 the_excerpt(); } ?>
- java文章标题及文章相似度计算hash算法实现
参看了 https://github.com/awnuxkjy/recommend-system 对方用了 余弦 函数实现相似度计算,我则用的是 hanlp+hash 算法(Hash算法总结) 再看服 ...
- 使用ScriptableObject创建.asset文件
.asset一般用来存储一些配置,比如SDK初始化的相关参数. using System.Collections.Generic; using UnityEngine; namespace XXX { ...
- Unity设置播放模式下始终先执行指定的场景
通过我们使用Unity开发游戏,是在PC/Mac上.而一个游戏通常也会有很多的场景,比如A.B.C.D三个场景,正常流程下的执行顺序是 A –> B –> C –> D.在具体一点, ...
- Docker实现容器具有固定IP
Docker的网络类型 Docker安装后,默认会创建三种网络 $ docker network ls NETWORK ID NAME DRIVER SCOPE 6bdc00ad2a8d bridge ...