2017-05-31 171 views
0

我正在尝试在unix中编写个人webscraper以获得乐趣。我已经抓取了一个名称列表并将它们保存到名为“names”的文件中。其次我映射(地图文件索引<名称)到一个数组,所有 - >while(count -lt ...) do ${index[$count]}将是我如何调用数组中的单个元素。Cygwin修剪尾随空白

但是我遇到了麻烦,因为mapfile向数组中的所有元素添加了尾部空格。像“AAPL”。我想知道如何使用sed,grep和awk的组合来修剪空白,并且如果可能的话将元素保存回数组中。

谢谢。

+0

可以给的提取物名称文件:例如'头名|的输出od -c -tu1' –

回答

0

假设你从文件索引数组,则可以利用托架表达与sed

mapfile -t index < <(sed 's/[[:space:]]*//g' names) 

替代地read可以是另一种方法:

read -a index <<< $(sed 's/[[:space:]]*//g' names) 
+0

谢谢,我对mapfile命令非常陌生,不知道-t选项。再次,非常感谢! –

+0

不客气。不解决你的问题或sed? – Unwastable

+0

作为一个快速测试,运行'cat -e FILE |头'来查看你是否有行结束问题。如果文件以CR LF而不是LF单独结尾,则可能会在CR出现的行末尾看到空白。您可以使用'dos2unix FILE'或'd2u FILE'修复文件。 –