Zsh 填充关联数组并从文件读取导致奇怪的分离
Zsh filling associative array with read from file leads to strange separation
我有一个生成的文本文件
find Path -printf '%s\t%p\n' > textfile
当我这样做时
declare -A DICT;
while IFS='\t' read -r SIZE PFAD
do DICT[$SIZE]=$PFAD
done < ../Listen/textfile
DICT的内容让我吃惊:
打印“${(@k)DICT}”
表明,DICT 的键不仅仅是文件的 SIZE,还包括
尺寸\tRoot_of_PFAD/2_letters_of_following_directory。
这些值包含行的其余部分 = 带有文件名的路径的其余部分。
在我看来,好像 read 将行分隔为 '\t+9 个字符'
IFS=$(printf '\t')
似乎成功了。
@Gairfowl 暗示了正确的方向。
我没有意识到,路径中的第十个字符是 t。
非常感谢!
我有一个生成的文本文件
find Path -printf '%s\t%p\n' > textfile
当我这样做时
declare -A DICT;
while IFS='\t' read -r SIZE PFAD
do DICT[$SIZE]=$PFAD
done < ../Listen/textfile
DICT的内容让我吃惊:
打印“${(@k)DICT}” 表明,DICT 的键不仅仅是文件的 SIZE,还包括 尺寸\tRoot_of_PFAD/2_letters_of_following_directory。 这些值包含行的其余部分 = 带有文件名的路径的其余部分。 在我看来,好像 read 将行分隔为 '\t+9 个字符'
IFS=$(printf '\t')
似乎成功了。 @Gairfowl 暗示了正确的方向。 我没有意识到,路径中的第十个字符是 t。 非常感谢!