kettle 从sftp 下载今天生成的文件
将ftp上指定路径下 今天生成的文件下载到本地 ;难点:文件名中有空格 需要处理 ;
获取sftp上当天生成的文件脚本:
#!/bin/bash function read_dir(){ today=`date +%Y-%m-%d` IFS_old=$IFS IFS=$'\n' for file in `ls $1` do if [ -d $1"/"$file ] ;then read_dir $1"/"$file elif [ -f $1"/"$file ] ;then longfile=`ls -l --time-style=long-iso $1"/"$file` check=`echo $longfile | grep $today` if [ -n "$check" ] ; then echo $1"/"$file fi fi done IFS=$IFS_old } read_dir $1
crontab 调度用
#!/bin/bash path=/home/SFTP bash $path/getTodayCreateFile.sh $path >$path/todayCreateFileList.txt
将文件名中包含空格的文件重新进行重名
# 去除projectHome 目录下包含空格的文件名 cd $projectHome find . -type f -name "* *" -print | while read name; do na=$(echo $name | tr ' ' '_') if [[ $name != $na ]]; then mv "$name" $na fi done
job 通过JS 获取当天日期
useDate =0; if (useDate == 0) { date = new java.util.Date(); //date.setDate(date.getDate()-1); //Go back 1 full day dateFormat = new java.text.SimpleDateFormat("yyyyMMdd"); newDateStr = dateFormat.format(date); parent_job.setVariable("currentDate", newDateStr); } true;