我正在尝试将文件作为行数组读取,然后使用 zsh 对其进行迭代。我得到的代码大部分时间都有效,除非输入文件包含某些字符(例如括号)。这是它的一个片段:
#!/bin/zsh
LIST=$(cat /path/to/some/file.txt)
SIZE=${${(f)LIST}[(I)${${(f)LIST}[-1]}]}
POS=${${(f)LIST}[(I)${${(f)LIST}[-1]}]}
while [[ $POS -le $SIZE ]] ; do
ITEM=${${(f)LIST}[$POS]}
# Do stuff
((POS=POS+1))
done
我需要进行哪些更改才能使其正常工作?