shell skills

来源:互联网 发布:ppap 知乎 编辑:程序博客网 时间:2024/06/07 19:00

1. 打印颜色

#!/bin/shCDIR=$(cd `dirname "$0"` && pwd)cd "$CDIR"print_red() {  printf '%b' "\033[91m$1\033[0m\n"}print_green() {  printf '%b' "\033[92m$1\033[0m\n"}#KUBECTL_PARAMS="--context=foo"NAMESPACE=${NAMESPACE:-monitoring}KUBECTL="kubectl ${KUBECTL_PARAMS} --namespace=\"${NAMESPACE}\""EXTERNAL_URL=${EXTERNAL_URL:-https://prometheus.example.com}eval "kubectl ${KUBECTL_PARAMS} create namespace \"${NAMESPACE}\""eval "${KUBECTL} create configmap external-url --from-literal=url=${EXTERNAL_URL} --dry-run -o yaml" | eval "${KUBECTL} apply -f -"print_green "Set ${EXTERNAL_URL} as an external url"eval "${KUBECTL} create configmap grafana-import-dashboards --from-file=grafana-import-dashboards-configmap -o json --dry-run" | eval "${KUBECTL} apply -f -"eval "${KUBECTL} create configmap prometheus-rules --from-file=prometheus-rules -o yaml --dry-run" | eval "${KUBECTL} apply -f -"eval "${KUBECTL} create configmap alertmanager-templates --from-file=alertmanager-templates -o json --dry-run" | eval "${KUBECTL} apply -f -"for yaml in *.yaml; do  eval "${KUBECTL} create -f \"${yaml}\""doneeval "${KUBECTL} get pods $@"

2,shell日志搜集

$ cat source_mysql.sh #!/bin/bash########data="/home/mysql"mysql="/usr/bin/mysql"rsync_log_file="/var/log/rsync_increment.log"for i in `cat /root/shell/tables.txt`#for i in `cat /root/shell/t.txt`do    # 2017-05-03 11:40:02 - [INFO] - run_user[root] - msg_or_rc[Rsync BI increment success.]     printf "%s - [INFO] - run_user[${USER}] - msg_or_rc[%s]\n" "${run_time}" "Table $i begin." >> ${rsync_log_file}     $mysql -uroot -p123456 mydb  < $data/$i.sql >> ${rsync_log_file} 2>&1done     $mysql -uroot -pxxxxx mydb < /root/shell/droptable.sql     run_time="`date '+%Y-%m-%d %H:%M:%S'`"     printf "%s - [INFO] - run_user[${USER}] - msg_or_rc[%s]\n" "${run_time}" "All import success." >> ${rsync_log_file}


0 0
原创粉丝点击