reading/writing 文件中奇怪的 awk 输出
weird awk outputs in reading/writing file
我正在开发一个关于使用 Tedlium 数据集的现有示例的 Kaldi 项目。在清理阶段之前,每一步都运作良好。我有一个长度不匹配的问题。检查所有脚本后,我发现问题出在 lattice_oracle_align.sh
参考:https://github.com/kaldi-asr/kaldi/blob/master/egs/wsj/s5/steps/cleanup/lattice_oracle_align.sh
我认为问题出在第 142 行。
awk '{if ( == "#csid") print " "(++)}' $dir/analysis/per_utt_details.txt > $dir/edits.txt
上面一行应该逐行读取per_utt_details.tx,每次读取一个#csid时应该在edits.txt中写入一行
per_utt_details 中的文本看起来像这样。
ref
hyp
op
#csid 0 0 0 0
...repeat the above 4 lines.
per_utt_details.txt 中有 1073046 行。我预计 edits.txt 中有 268262 行。但是,edits.txt.
中只存在 48746 行
通过查看您的示例,我相信您正在比较第一个字段而不是第二个字段(显示在您显示的代码中),所以如果是这种情况,请尝试 运行 以下(我从</code> 到 <code>
用于与第一个字段进行比较)。
awk '( == "#csid"){print ,(++)}' per_utt_details.txt > edits.txt
我正在开发一个关于使用 Tedlium 数据集的现有示例的 Kaldi 项目。在清理阶段之前,每一步都运作良好。我有一个长度不匹配的问题。检查所有脚本后,我发现问题出在 lattice_oracle_align.sh
参考:https://github.com/kaldi-asr/kaldi/blob/master/egs/wsj/s5/steps/cleanup/lattice_oracle_align.sh
我认为问题出在第 142 行。
awk '{if ( == "#csid") print " "(++)}' $dir/analysis/per_utt_details.txt > $dir/edits.txt
上面一行应该逐行读取per_utt_details.tx,每次读取一个#csid时应该在edits.txt中写入一行 per_utt_details 中的文本看起来像这样。
ref
hyp
op
#csid 0 0 0 0
...repeat the above 4 lines.
per_utt_details.txt 中有 1073046 行。我预计 edits.txt 中有 268262 行。但是,edits.txt.
中只存在 48746 行通过查看您的示例,我相信您正在比较第一个字段而不是第二个字段(显示在您显示的代码中),所以如果是这种情况,请尝试 运行 以下(我从</code> 到 <code>
用于与第一个字段进行比较)。
awk '( == "#csid"){print ,(++)}' per_utt_details.txt > edits.txt