2013-06-26 47 views
0

我們有一個製表符分隔的文本文件,需要以管道分隔格式發送給客戶,並清除所有隱藏的字符。他們建議在Windows語言設置中手動切換分隔符,然後在字符板中打開以搜索字符。我覺得這很浪費時間,最有可能用VB或批處理解決。將製表符分隔到管道分隔符和清除隱藏字符的自動過程

特定於該客戶端需要硬回車,$,和其他一些隨機字符它發送

任何指導,將是非常讚賞之前被刪除!

的示例數據(只是一個製表符分隔txt文件)

Item number Artist last name Artist first name Title Image width Image height Paper width Paper height Retail price Small Text Descriptive Category Format UPC 
+0

你是什麼意思的數據饋送? –

+0

請詳細解釋:輸入格式示例,「隱藏字符」。 – Endoro

+0

它實質上只是一個產品說明,sku的,重量,可用數量等庫存清單... – Jimmy

回答

0

這將使用免費GnuSED和轉換TAB鍵|同時去除$旋轉Z Y和X(區分大小寫):

@echo off 
sed -e "s/\t/|/g" -e "s/\$//g" -e "s/Z//g" -e "s/Y//g" -e "s/X//g" file.txt >filenew.txt 

這額外的批處理腳本刪除的行字符結束,但一些操作系統版本將刪除前導空格。

@echo off 
sed -e "s/\t/|/g" -e "s/\$//g" -e "s/Z//g" -e "s/Y//g" -e "s/X//g" file.txt >tmp.tmp 
for /f "delims=" %%a in (tmp.tmp) do >>filenew.txt set /p "=%%a"<nul 
del tmp.tmp 
+0

謝謝@foxidrive這絕對有效地轉換爲標籤並刪除指定的字符......但不解決回車。我發現了一些使用coreutils tr命令解決這個問題的其他問題,但結果仍然是空白。我敢打賭,這是我缺乏對語法的理解。 – Jimmy