【发布时间】:2018-10-30 16:48:19
【问题描述】:
在 Ksh 中,我有一个读取 2 个文件的 while 循环。如果文件 1 的当前行是“Y”,则将文件 2 的当前行回显到新文件中,如果文件 1 的当前行是“N”,则在 winscp 中回显“waste”。
while IFS= read xxxx && IFS= read yyyy <&4; do
if [[ ${xxxx} = "N" ]];then
echo waste
else
echo "$yyyy" .>> $newfile
fi
done <"$file1" 4<"$file2"
但是,如果文件 1 的前三行为 N,其余七行为 Y,而不是将第二个文件的最后七行打印 3 次“浪费”到新文件中,我的 Winscp 显示 10 次“浪费”,而运行脚本。
【问题讨论】:
-
请阅读Under what circumstances may I add “urgent” or other similar phrases to my question, in order to obtain faster answers? - 总结是这不是解决志愿者的理想方式,并且可能会适得其反。请不要将此添加到您的问题中。
-
我没有成功重现该问题。我不知道为什么。您是否有特殊的输入文件,ksh 的行为是否与我的 bash 不同,或者您是否对这个示例进行了过度简化。提供输入文件可能会有所帮助。
-
请查看我对您对我的答复的最新回复