查看積分策略說明發表回覆
Discuz! 代碼
提示插入
直接插入
說明訊息

插入粗體文本 插入斜體文本 插入下劃線 置中對齊 插入超級連結 插入信件位址 插入圖像 插入 flash 插入代碼 插入引言 插入列表
刪除線 直線分隔線 虛線分隔線
    
添加文字底框
內容 [字數檢查]:

表情符號

更多 Smilies
字型大小 |||
溫馨提示:本區開放遊客瀏覽。


文章關鍵字 : [功能說明]
(關鍵字可加強搜索準確性, 如關鍵字多於一組, 請以 , 作分隔, e.g. : 阿笨,shiuh,第一笨)

 關閉 URL 識別 | html 禁用
 關閉 表情符號 | 表情符號 可用
 關閉 Discuz! 代碼 | Discuz! 代碼 可用
使用個人簽名
接收新回覆信件通知
推薦放檔網絡空間

檔案(Torent, zip等)
  1. freedl
  2. multiupload
  3. btghost
  4. 便當狗
  5. mediafire
  6. pillowangel
圖片(JPG, GIF等)
  1. hotimg
  2. tinypic
  3. mousems2
  4. imageshack
  5. imm.io
>>>歡迎推薦好用空間


最新10篇文章回顧
alexanita

 發表於 2018-8-11 09:11 AM

#!/bin/sh

# 輸入資料文字檔案來源 input_data.txt
# abc@example.com sales@yahoo.com,sales@gmail.com,contact@gmail.com
# joe9976@example.com admin@abc_tech.com,hotimg@twedk.org
# peter@hotmail.com tinypic@gmail.com,pillowangel@mediafire.com,imm@abc.com,debi@hotmail.com
#

#Input Text File Name 輸入檔案名稱
input_file=input_data.txt

IFS=$'\r\n'
head_email_array=( $(cat ${input_file} | cut -d' ' -f1) )

for head_email_item in ${head_email_array[@]}
do
    IFS=$'\ '
    body_email_array=( $(grep ${head_email_item} ${input_file} | cut -d' ' -f2 | sed -e 's/,/\ /g') )
    for body_email_item in ${body_email_array[@]}
    do
        # 輸出所要結果
        echo "${head_email_item} ${body_email_item}"
    done
done


小坦克

 發表於 2018-8-9 11:27 AM

學vim用macro很方便


pcca

 發表於 2015-12-28 10:17 AM


hauha

 發表於 2015-10-17 08:52 PM

1. 把資料存成文字檔案, 如twed2k.txt
2. 在Linux下編輯twed2k.sh, 內容如下
#=========================================
#!/bin/sh

INPUT="twed2k.txt"
INPUT1=`cat $INPUT | awk '{print $1}' | xargs`

for a in $INPUT1
do
    b1=`cat $INPUT | grep $a | awk '{print $2}' | sed "s/,/ /g"`
    for b in $b1
    do  
        echo $a $b
    done
done
#=========================================
3. chmod 700 twed2k.txt
4. ./twed2k.sh

執行結果:
hauha@ubuntu:~# cat twed2k.txt
abc@example.com sales@yahoo.com,sales@gmail.com,contact@gmail.com
joe9976@example.com admin@abc_tech.com,hotimg@twedk.org
peter@hotmail.com tinypic@gmail.com,pillowangel@mediafire.com,imm@abc.com,debi@hotmail.com
hauha@ubuntu:~# ./twed2k.sh
abc@example.com sales@yahoo.com
abc@example.com sales@gmail.com
abc@example.com contact@gmail.com
joe9976@example.com admin@abc_tech.com
joe9976@example.com hotimg@twedk.org
peter@hotmail.com tinypic@gmail.com
peter@hotmail.com pillowangel@mediafire.com
peter@hotmail.com imm@abc.com
peter@hotmail.com debi@hotmail.com


x13

 發表於 2015-4-11 08:17 AM

既然是linux
先決定你的資料會不會到 windows 上,不會就用LF
CRLF ( \r\n ) ( 0x0D 0x0A )
LF ( \n ) ( 0x0A )

第一個方法
tr ',' '\n'  < file

第二個方法
sed 's/\,/\n/g' file


都是一行


pcca

 發表於 2014-10-9 01:45 PM

五體投地, 一堆神人! 先謝謝大家!

也拜託朋友幫忙, 他給的答案:

BEGIN {FS="[ ,]" }
{
head=$1
for(i=2;i<=NF;i++)
        print head,$i

}
存成 pcca.awk

然後
$ awk -f pcca.awk your_data_file


陽だまり

 發表於 2014-10-9 12:12 PM

需要更進一步的功能就請自已處理了

<textarea name="input" rows="10" cols="100"><br>
<textarea name="output" rows="10" cols="100"></textarea>
<input type="button" value="go" onclick="go()">

<script>
function go(){
  var inputText  = document.getElementsByName("input")[0].value
  var outputText = ""
  var inputArray = inputText.split("\n")
  for(var i=0;i<inputArray.length;i++){
    var thisArray  = inputArray[i].split(" ")
    var leftArray  = thisArray[0]
    var rightArray = thisArray[1].split(",")
    for(var j=0;j<rightArray.length;j++){
      outputText += leftArray + " " + rightArray[j] + "\n"
    }
  }
  document.getElementsByName("output")[0].value = outputText
}
</script>


pcca

 發表於 2014-10-8 02:38 PM

有點麻煩, 因為其實這只是我整個要處理的東西其中的一部份
中間會跨伺服器... 所以想寫個 script 自動化一下。


XDR

 發表於 2014-10-8 01:36 PM

用WORD
把 , 還有 ^w
用 ^p 取代
再丟進 excel排序


Observer

 發表於 2014-10-8 12:05 PM

我自己慣用的軟體的話
笨方法如下

我會用 Ultraedit  的 十六進位編輯 (HEX) 模式
將逗號(2c)跟空白(20)取代 成 0D 0A

這樣就會把所有資料都分行
存成 txt 檔之後

用 excel 或 access 匯入,然後再排序
排序後再匯出





所在時區為 GMT+8, 現在時間是 2024-3-29 03:59 AM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.021674 second(s), 7 queries , Qzip disabled