對於一個項目我必須通過使用xml格式的其餘(curl)將csv文件的數據從websystem中獲取。 我得到了幾乎所有的工作,但一件事。將CSV元素以新行保存到數組
我爲這個項目收到的文件是一個.xlsx文件。我將它導出到.csv文件(分隔符分隔)並將編碼轉換爲UTF-8。原始文件大約有2000行和30列。
我的策略是「剪切」.csv文件的字段,並將輸出保存到帶有bash(4.3.42)腳本的陣列(我之前沒有使用Python;))(SLES12 SP2這是一臺測試機)。
csv採用以下格式(簡化): (注意:在一個單元格中有三行的描述,這是打破我的腳本的部分。)curl命令創建這些新的虛假條目,線。
關於四分之一的數據的具有類似的描述。
導出爲CSV之後,這是該文件的樣子,如果我用vim打開它:
title|description|firstname
Test|Lorem ipsum dolor sit amet,
consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat
sed diam voluptua.|Chris
這是我簡單的腳本:
file="Kontakte.csv"
# Get the values from the file
arrV[1]=$(cut -d'|' -f1 "$file" | cut -d$'\n' -f2) # Title
arrV[2]=$(cut -d'|' -f2 "$file" | cut -d$'\n' -f2) # Description
arrV[3]=$(cut -d'|' -f3 "$file" | cut -d$'\n' -f2) # First name
echo "### Values ###"
# For reference
echo "Title: " ${arrV[1]}
echo "Description: " ${arrV[2]}
echo "Name: " ${arrV[3]}
我得到的是.. 。
### Values ###
Title: Test
Description: Lorem ipsum dolor sit amet,
Name: Chris
,而不是類似的東西...:
### Values ###
Title: Test
Description: Lorem ipsum dolor sit amet,\n onsetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat\n sed diam voluptua.
Name: Chris
我有一個vba腳本來擺脫新行,但將是一個不太理想的解決方案。
這將是很好,只是把周圍的處決一些報價,使其工作,如:
arrV[2]="$(cut -d'|' -f2 "$file" | cut -d$'\n' -f2)"
但我coudn't解決這樣的問題。
你有什麼想法,該怎麼做這些新行?或者在Excel中預先刪除新行是我唯一的選擇?
預先感謝您。