linux脚本的数据输出到excel,使用shell实现Excel表格导出功能 | 剑花烟雨江南
在Web項目中,我們經常會遇到Excel表格導出的功能,對于一些數據實時性要求不高的、邏輯相對簡單的導出,是否可用通過shell腳本的方式來進行導出,從而降低開發成本呢?
我們都知道,CSV格式可以用Excel表打開,且CSV格式的本質是以“,”為分隔符的文本,那么我們在sql的字段之間加入","即可以CSV格式的文件進行輸出。
下面,我們使用shell腳本來實現:
#!/bin/bash
#文件保存路徑
exportdata_dir?=?/data/export
#獲取日期
dd?=?`data?+?%Y%m%d`
#數據庫信息
#數據庫用戶名
username?=?'root'
#數據庫密碼?可以放在文件內
password?=?'root'
#數據庫名
database_name?=?'export_test'
#數據庫之地
host?=?'127.0.0.1'
#如果文件夾不存在則創建
if?[?!?-d?$exportdata_dir?];
then
mkdir?-p?$exportdata_dir;
fi
#導出訂單的sql
order_sql?=?'';
order_file?=?'訂單'
#導出文件
/usr/local/mysql/bin/mysql?-h?$host?-u$username?-p$password?$database_name?-e?"$order_sql"?>?$exportdata_dir/$order_file.csv
#如果文件已生成則刪除
if?[?-f?$exportdata_dir/$order_file'_'$dd.csv];
then
rm?-rf?$exportdata_dir/$order_file'_'$dd.csv;
fi
#轉碼
iconv?-f?"utf-8"?-t?"gbk"?-c?$exportdata_dir/$order_file.csv?>?$exportdata_dir/$order_file'_'$dd.csv;
rm?-rf?$exportdata_dir/$order_file.csv
這樣我們使用 centos 的crontab 定時任務執行shell腳本即可完成Excel的定時生成,如果需要進行用戶下載,在后臺代碼中遍歷 exportdata_dir 下的文件,提供下載功能即可。
總結
以上是生活随笔為你收集整理的linux脚本的数据输出到excel,使用shell实现Excel表格导出功能 | 剑花烟雨江南的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux scp密码参数,使用scp命
- 下一篇: linux无密码sudo,在Linux系