論客郵箱導出發信信息腳本

#!/bin/bash

?

# 檢查是否提供了CSV文件名

if [ $# -ne 1 ]; then

? ? echo "用法: $0 <csv文件>"

? ? exit 1

fi

csv_file="$1"

?

# 暫存用戶和mid

output_csv="user_mid.csv"

?

# 抄送人優化

extract_value() {

? ? [[ "$1" = *,* ]] || return # 無逗號直接返回空

? ? local temp="${1%,*}" # 移除最后一個逗號及之后的內容

? ? echo "${temp##*:}" # 提取最后一個冒號后面的內容

? ? }

?

# 優化文件內部標題

mail_out="mail_out.txt"

echo "發信人;郵件主題;收信人;抄送人;郵件時間" > $mail_out

?

# 郵箱域名,根據實際去修改。不要把@符號去除

domain="@a.cn"

?

# 檢查文件是否存在

if [ ! -f "$csv_file" ]; then

? ? echo "錯誤: 文件 $csv_file 不存在"

? ? exit 1

fi

?

# 讀取CSV文件并輸出第一列,獲取郵件的mid值

while IFS= read -r line || [ -n "$line" ]; do

? ? # 提取第一列(逗號分隔)

? ? col=$(echo "$line" | awk -F, '{print $1}')

? ? mail=($(/home/coremail/bin/userutil --list-msg $col$domain fid=3 | grep -v total | awk '{print $2}'))

? ? #/home/coremail/bin/userutil --list-msg $col$domain fid=3

? ? ? ? #fid=1 表示收件箱文件夾

? ? ? ? #fid=2 表示草稿箱文件夾

? ? ? ? #fid=3 表示已發送文件夾

? ? ? ? #fid=5 表示垃圾郵件文件夾

? ? ? ? #fid=6 表示病毒文件夾

? ? for value in "${mail[@]}"; do

? ? echo "$col,$value" >> "$output_csv"

done

done < "$csv_file"

?

# 導出發信人,主題,收信人和抄送人

while IFS= read -r line || [ -n "$line" ]; do

? ? user=$(echo "$line" | awk -F, '{print $1}')

? ? mid=$(echo "$line" | awk -F, '{print $2}')

? ? /home/coremail/bin/userutil --display-msginfo $user$domain $mid > mail_msg.txt

? ? mail_subject=$(grep "Subject:" mail_msg.txt | awk -F'Subject: ' '{print $2}')

? ? mail_to=$(grep "To:" mail_msg.txt | awk -F'To: ' '{print $2}')

? ? mail_cc1=$(grep "retolist=" mail_msg.txt | awk -F'STR]:' '{print $2}')

? ? mail_cc=$(extract_value "$mail_cc1")?

? ? mail_time=$(grep "RecTime" mail_msg.txt | awk -F'Time: ' '{print $2}')

? ? echo "$user$domain;$mail_subject;$mail_to;$mail_cc;$mail_time" >> $mail_out

done < "$output_csv"

?

# 優化生成文件

sed -i "s/,/;/g" $mail_out

sed -i "s/;/,/g" $mail_out

mv $mail_out mail_out.csv

?

echo "生成的發信清單文件在腳本所在目錄的mail_out.csv,請查收!!"

# 刪除暫存用戶和mid

rm -f $output_csv

rm -f mail_msg.txt

rm -f $mail_out

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913529.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913529.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913529.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Windows 本地安裝部署 Apache Druid

在 Windows 本地安裝部署 Apache Druid 可以按照以下步驟進行。由于 Druid 是基于 Java 的應用&#xff0c;需要先準備好 Java 環境&#xff0c;然后下載配置 Druid。 一、環境準備 1. 安裝 Java 確保已安裝 Java 8 或以上版本&#xff08;推薦 Java 11&#xff09;&#xf…

PY32F002A單片機 低成本控制器解決方案,提供多種封裝

PY32F002A 是一款32 位 ARM Cortex-M0 內核的高性價比單片機。PY32F002A單片機提供了多種封裝類型&#xff0c;最大有18個IO&#xff0c;芯片采用32位ARM內核&#xff0c;M0架構&#xff0c;最高工作頻率24MHz。flash 存儲器20KByte,SRAM 3K。最大支持9路12位ADC&#xff0c;5個…

區塊鏈技術在物聯網(IoT)中的核心應用場景

以下是區塊鏈技術在物聯網&#xff08;IoT&#xff09;中的核心應用場景及具體實例&#xff0c;涵蓋技術原理、實施架構和實際價值&#xff1a;一、區塊鏈解決物聯網的四大核心問題痛點區塊鏈方案技術實現設備身份偽造唯一數字身份鏈上注冊非對稱加密生成設備DID&#xff08;去…

PostgreSQL DELETE 語句詳解

PostgreSQL DELETE 語句詳解 在數據庫管理中,刪除數據是日常操作中不可或缺的一環。PostgreSQL 是一款功能強大的開源關系型數據庫管理系統,其 DELETE 語句在數據刪除方面表現出色。本文將詳細解析 PostgreSQL 的 DELETE 語句,包括其語法、使用場景和注意事項。 1. DELETE…

傳統報警難題頻現,安全運行隱患重重

在企業生產運營與安全管理過程中&#xff0c;報警系統作為保障安全運行的重要防線&#xff0c;其作用不言而喻。然而&#xff0c;傳統報警系統在實際應用中卻難題頻現&#xff0c;不僅無法及時、準確地預警潛在風險&#xff0c;還為企業的安全運行埋下了重重隱患。青島國瑞信息…

WPF學習筆記(23)Window、Page與Frame、ViewBox

Window、Page與Frame一、Window1.模態窗口與非模態窗口2.Window類3.示例二、Page1.概述2.Page類三、Frame1.概述2.Frame類3.示例四、ViewBox1. 概述2. 詳解3. 示例總結一、Window 1.模態窗口與非模態窗口 2.Window類 屬性說 明Title獲取或設置窗口的標題。lcon設獲取或設置窗…

設計模式---觀察者模式(發布-訂閱模式)

設計模式—觀察者模式(發布-訂閱模式) 一、簡介 發布-訂閱模式是一種消息傳遞模式&#xff0c;用于實現對象間的一對多依賴關系。在這種模式中&#xff1a; 發布者&#xff08;Publisher&#xff09;不直接向訂閱者&#xff08;Subscriber&#xff09;發送消息發布者和訂閱者…

一文講清楚React Fiber

文章目錄一文講清楚React Fiber1. 基礎概念1.1瀏覽器刷新率&#xff08;幀&#xff09;1.2 JS執行棧1.3 時間分片1.4 鏈表2. React Fiber是如何實現更新過程控制2.1 任務拆分2.2掛起、恢復、終止2.2.1 掛起2.2.2 恢復2.2.3 終止2.3 任務具備優先級一文講清楚React Fiber 1. 基…

(3)機器學習小白入門 YOLOv: 解鎖圖片分類新技能

(1)機器學習小白入門YOLOv &#xff1a;從概念到實踐 (2)機器學習小白入門 YOLOv&#xff1a;從模塊優化到工程部署 (3)機器學習小白入門 YOLOv&#xff1a; 解鎖圖片分類新技能 前言 YOLOv 算法通常被用于目標檢測任務&#xff0c;但通過對其進行適當的調整和改造&#xff0c…

主機安全-開源HIDS字節跳動Elkeid使用

安裝好elkeid后就開始接入主機和k8s集群&#xff0c;安裝文檔-----主機安全-開源HIDS字節跳動Elkeid安裝-CSDN博客 1、接入主機 在系統管理-----安裝配置-----復制命令------在目標機器上執行這段命令 執行成功后主機就會自動接入 2、接入k8s集群 在k8s主機上執行腳本&#x…

【vue】用conda配置nodejs,一鍵開通模版使用權

特此鳴謝我的好同學重中之重的特級教學&#xff0c;非常之好用一、conda環境下載安裝二、創建包含nodejs的conda環境創建一個新環境&#xff1a;conda create -n 【自定義環境名字】 python3.9 conda create -n my_nodejs_env python3.9激活新環境&#xff1a;conda activate【…

深度學習--tensor(創建、屬性)

一、torch概念1.1簡介pytorch簡稱torch&#xff0c;意為深度學習框架。它使用張量&#xff08;tensor&#xff09;來表示數據&#xff0c;可以輕松地處理大規模數據集&#xff0c;且可以在GPU上加速。pytorch基本功能&#xff1a;自動微分、自動求導等。1.2安裝官網獲得下載命令…

【內存】Linux 內核優化實戰 - net.ipv4.tcp_max_tw_buckets

目錄net.ipv4.tcp_max_tw_buckets 詳解一、基本概念二、核心作用三、默認值四、調整場景需增大參數的場景需減小參數的場景五、查看與修改方法1. 查看當前值2. 臨時修改&#xff08;重啟失效&#xff09;3. 永久修改&#xff08;重啟生效&#xff09;六、注意事項總結net.ipv4.…

短劇系統開發定制全流程解析:從需求分析到上線運營

一、短劇行業現狀與系統開發價值短劇作為一種新興的內容形態&#xff0c;近年來呈現爆發式增長態勢。2023年中國短劇市場規模已突破300億元&#xff0c;用戶規模超過5億&#xff0c;這種以"快節奏、強劇情、低成本"為特點的內容形式正在重塑數字娛樂產業格局。短劇系…

各服務器廠商調整BIOS睿頻教程

調整BIOS睿頻選項匯總&#xff1a;1、華為服務器&#xff1a;2、華為服務器V53、浪潮服務器4、浪潮服務器M45、 曙光服務器5.1 曙光I620-G205.2 曙光I620-G306、聯想服務器&#xff08;650系列&#xff09;650系列的服務器對照截圖信息修改對應項&#xff0c;修改為截圖里的選項…

PyTorch筆記3----------統計學相關函數

1.基礎函數 import torch a torch.rand(2,2) print("a:\n",a) print(########################) print("平均值:\n",torch.mean(a,dim0)) print("總和:\n",torch.sum(a,dim0)) print("所有元素的積:\n",torch.prod(a,dim0)) print(&…

【Prometheus】通過tar包部署單機版Prometheus 和 Pushgateway

在ECS&#xff08;Elastic Compute Service&#xff09;機器上通過tar包部署 Prometheus 和 Pushgateway&#xff0c;并配置 Prometheus 采集 Pushgateway 的數據&#xff0c;是一個常見的監控部署任務。以下是詳細的步驟說明&#xff1a;&#x1f9e9; 環境準備 操作系統&…

Matlab 頻譜分析 (Spectral Analysis)

文章目錄1. 信號預處理 - 去直流分量2. 快速傅里葉變換&#xff08;FFT&#xff09;3. 功率譜密度&#xff08;PSD&#xff09;計算4. 主頻率檢測5. 譜質心計算6. 對數譜顯示完整的信號處理流程實際應用示例1. 信號預處理 - 去直流分量 data data - mean(data);數學原理&…

【實時Linux實戰系列】實時以太網與 TSN 基礎

在實時系統中&#xff0c;網絡通信的實時性和可靠性是確保系統正常運行的關鍵。實時以太網和時間敏感網絡&#xff08;TSN&#xff09;技術為實時數據傳輸提供了強大的支持。TSN通過一系列協議和機制&#xff0c;確保數據能夠在預定的時間內可靠傳輸&#xff0c;滿足工業自動化…

茶顏悅色JAVA面試分享

1、自我介紹項目2、設計一個爆款飲品秒殺系統&#xff1a;如何解決“幽蘭拿鐵”上新時的瞬時10萬QPS&#xff1f;從緩存、限流、庫存扣減到訂單創建的全流程設計。3、訂單超市未支付自動取消&#xff1a;如何實現高精度&#xff08;30分鐘精確到秒&#xff09;且低延遲的訂單狀…