日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

linux脚本的数据输出到excel,使用shell实现Excel表格导出功能 | 剑花烟雨江南

發(fā)布時(shí)間:2024/10/5 linux 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux脚本的数据输出到excel,使用shell实现Excel表格导出功能 | 剑花烟雨江南 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在Web項(xiàng)目中,我們經(jīng)常會(huì)遇到Excel表格導(dǎo)出的功能,對(duì)于一些數(shù)據(jù)實(shí)時(shí)性要求不高的、邏輯相對(duì)簡(jiǎn)單的導(dǎo)出,是否可用通過shell腳本的方式來進(jìn)行導(dǎo)出,從而降低開發(fā)成本呢?

我們都知道,CSV格式可以用Excel表打開,且CSV格式的本質(zhì)是以“,”為分隔符的文本,那么我們?cè)趕ql的字段之間加入","即可以CSV格式的文件進(jìn)行輸出。

下面,我們使用shell腳本來實(shí)現(xiàn):

#!/bin/bash

#文件保存路徑

exportdata_dir?=?/data/export

#獲取日期

dd?=?`data?+?%Y%m%d`

#數(shù)據(jù)庫(kù)信息

#數(shù)據(jù)庫(kù)用戶名

username?=?'root'

#數(shù)據(jù)庫(kù)密碼?可以放在文件內(nèi)

password?=?'root'

#數(shù)據(jù)庫(kù)名

database_name?=?'export_test'

#數(shù)據(jù)庫(kù)之地

host?=?'127.0.0.1'

#如果文件夾不存在則創(chuàng)建

if?[?!?-d?$exportdata_dir?];

then

mkdir?-p?$exportdata_dir;

fi

#導(dǎo)出訂單的sql

order_sql?=?'';

order_file?=?'訂單'

#導(dǎo)出文件

/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

#轉(zhuǎn)碼

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 定時(shí)任務(wù)執(zhí)行shell腳本即可完成Excel的定時(shí)生成,如果需要進(jìn)行用戶下載,在后臺(tái)代碼中遍歷 exportdata_dir 下的文件,提供下載功能即可。

總結(jié)

以上是生活随笔為你收集整理的linux脚本的数据输出到excel,使用shell实现Excel表格导出功能 | 剑花烟雨江南的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。