zsh - Zsh 从文件中读取填充关联数组导致奇怪的分离
问题描述
我有一个由
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 的内容让我吃惊:
print "${(@k)DICT}" 表明,DICT 的键不仅仅是文件的 SIZE,而是由 SIZE\tRoot_of_PFAD/2_letters_of_following_directory 组成。这些值包含该行的其余部分 = 带有文件名的路径的其余部分。在我看来,好像 read 用 '\t+9 characters' 分隔行
解决方案
IFS=$(printf '\t')
似乎已经成功了。@Gairfowl 暗示了正确的方向。我没有明白,路径中的第十个字符是 t。非常感谢!
推荐阅读
- header - soapaction 标头没有通过
- c# - 按钮和 PlayerPrefs
- java - Jsch,通过 JumpHosts 执行命令
- python - django ValueError:缺少“inline.bundle.js”运行服务器的静态文件清单条目
- android - 蓝牙在 SDP 查询中找不到自定义服务 UUID
- javascript - 如何修复使用 firebase admin 检索文档时出现的以下错误?
- angularjs - angularjs中的多选下拉菜单仅适用于Controller的初始化
- php - 由于通过引用变量传递,获取为 foreach 提供的无效参数
- c - $HOME 时出现 getcwd 错误
- kotlin - 3次后如何设置Kotlin while循环停止?