将3个命令重写为一个可以在cron上运行的命令或脚本

问题描述

|| 我目前使用3种不同的命令来实现下载zip,解压缩,将txt文件转换为utf8,然后将csv转换为json的目标! 首先我有:
wget https://www.example.com/example.zip -O temp.zip; unzip -o temp.zip; rm temp.zip
哪个很好,但是首先要解决的问题是如何重命名提取的文件,以便在以后的处理中每次都相同,因为它每天在zip中可以使用不同的名称?接下来,我根据将ISO转换为utf8的文件名运行此脚本:
sh dir_iconv.sh example1.txt ISO8859-1 UTF-8
这个脚本是哪个:
#!/bin/bash

ICONVBIN=\'/usr/bin/iconv\' # path to iconv binary

if [ $# -lt 3 ]
then
echo \"$0 dir from_charset to_charset\"
exit
fi

for f in $1/*
do
if test -f $f
then
    echo -e \"\\nConverting $f\"
    /bin/mv $f $f.old
    $ICONVBIN -f $2 -t $3 $f.old > $f
    rm -f $f.old
else
    echo -e \"\\nSkipping $f - not a regular file\";
fi
done
然后最后我运行一个ruby脚本csv2json-https://github.com/darwin/csv2json-如下调用(用竖线分隔)给我一个json输出:
csv2json -s \'|\' example1.txt > example1.json
有没有简单的方法可以将此转换为一个可以调用的命令或脚本?     

解决方法

将所有命令一个接一个地传送,并在必要时将它们放入外壳脚本文件中。
wget -qO- https://www.example.com/example.zip | unzip | iconv -f ISO8859-1 -t UTF-8 | csv2json > example.json
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...