bash - 将 .xls 转换为 .csv 然后删除转换后的 .xls 文件的 shell 脚本?
问题描述
我有一个简单的 shell 脚本,它在 crontab 中运行,并使用 libreoffice 命令将 .xls 文件转换为 .csv 格式。excel 文件每 5 分钟生成一次,所以我想在转换完成后删除 .xls 文件。下面是我正在使用的代码,
cat xlscsv.sh
for i in /reports/cctv_xls/*.xls; do libreoffice --headless --convert-to csv "$i" --outdir /cctv_reports/cctv_csv/; done
for i in /reports/cctv_csv/*.csv; do sed -i 1,5d "$i"; done
我要做的是,使用相同的脚本,删除转换为 csv 的 .xls 文件。不想运行单独的脚本进行删除。每 5 分钟生成 5 个 .xls 文件。请帮助实现这一目标。
解决方案
您可以编辑此行:
for i in /reports/cctv_xls/*.xls; do libreoffice --headless --convert-to csv "$i" --outdir /cctv_reports/cctv_csv/; done
成为
for i in /reports/cctv_xls/*.xls; do libreoffice --headless --convert-to csv "$i" --outdir /cctv_reports/cctv_csv/ && rm $i; done
仅当文件xls
成功转换为csv
推荐阅读
- python - 普通克里金问题
- python - 带有pyspark的多项式HMM?
- android - 我们如何为应用程序流创建 android 应用程序自定义文档?
- php - 在 PHP 中,我如何*安全地*获取给定语言环境的语言环境信息?
- c - 单字符 strcat -C
- javascript - 从javascript中的特定字符串中提取部分字符串
- laravel - 从关系中的外键检索最新数据
- eclipse - 如何对多标题列的行顺序进行排序?
- java - 运算符 > 未定义参数类型 XSSFCell, int Java(536871072)
- c# - How to create KMZ file on C#