Chinaunix首页 | 论坛 | 博客
  • 博客访问: 349700
  • 博文数量: 54
  • 博客积分: 497
  • 博客等级: 下士
  • 技术积分: 612
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-16 20:05
个人简介

行动…Don\'t ever let somebody tell you, you can\'t do something. you got a dream, you gotta protect it. people can\'t do something themselves they wanna tell you you can\'t do it.if you want something. go get it.

文章分类

全部博文(54)

文章存档

2021年(3)

2018年(1)

2017年(18)

2016年(7)

2015年(4)

2013年(1)

2011年(20)

我的朋友

分类: LINUX

2017-10-20 10:15:58

linuxman在实际的项目脚本中遇到此问题,耗费了一些时间。先来看下间接变量的解释:
假设一个变量的值是第二个变量的名字,举个例子:m=a, a=123,  就是通过m这个变量,来引用123这个值.使用 ${!m} 来调用
在实际的应用中样本为下:

#!/bin/bash
#Author: linuxman release:20171017

date=$1
YEAR=${date:0:4}

for i  in {category,categoryPath,movcatrel,Stbschedual,tshift,vod}
do
category="category_${date}.csv.tar.bz2"
categoryPath="categoryPath_${date}.csv.tar.bz2"
#HLD_BANGLIAN="HLD_BANGLIAN_"${date}".txt.tar.bz2"
movcatrel="movcatrel_"${date}".csv.tar.bz2"
Stbschedual="Stbschedual_"${date}".csv.tar.bz2"
tshift="tshift_"${date}".csv.tar.bz2"
vod="vod_"${date}".csv.tar.bz2"
viewer="viewer_"${date}".tar.bz2"
tar -jxvf /data1/files/njscb/${YEAR}/${date}/export/${!i} -C /data1/files/njscb/${YEAR}/${date}/export/

category="category_"${date}".csv"
categoryPath="categoryPath_"${date}".csv"
#HLD_BANGLIAN="HLD_BANGLIAN_"${date}".txt"
movcatrel="movcatrel_"${date}".csv"
Stbschedual="Stbschedual_"${date}".csv"
tshift="tshift_"${date}".csv"
vod="vod_"${date}".csv"

#rm -rvf /tmpdir
mkdir -p /tmpdir
iconv -c -f GB18030 -t UTF-8 /data1/files/njscb/${YEAR}/${date}/export/${!i} -o /tmpdir/$i

aws s3 rm s3://hdfs/source/320000/${date}/$i.bz2

bzip2 /tmpdir/*

aws s3 cp /tmpdir/$i.bz2 s3://hdfs/source/320000/${date}/
done


阅读(1488) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~