bash/sed/awk创建转录文件

bash/sed/awk创建转录文件,bash,sed,Bash,Sed,我有一个名为word.WAV的WAV文件列表。如何创建如中所述的转录文件,格式如下: w o r d(word) 示例:如果文件名为blue.wav,则行应为blue(blue)如果您有GNU awk,则可以使用以下awk命令从文件名中删除扩展名并生成所需的输出: awk '{gsub( /.[^.]*$/, "", $1);spaces=$1; gsub( /./, "& ", spaces); print "<s> " spaces "</s> ("$1

我有一个名为word.WAV的WAV文件列表。如何创建如中所述的转录文件,格式如下:

w o r d(word)

示例:如果文件名为
blue.wav
,则行应为
blue(blue)

如果您有GNU awk,则可以使用以下
awk
命令从文件名中删除扩展名并生成所需的输出:

 awk '{gsub( /.[^.]*$/, "", $1);spaces=$1; gsub( /./, "& ", spaces); print "<s> " spaces "</s> ("$1")"}'
awk'{gsub(/.[^.]*$/,”,$1);空格=$1;gsub(/./,“&”,空格);打印“空格”(“$1”)”)
e、 g

$a=blue.wav
$echo$a | awk'{gsub(/.[^.]*$/,“”,$1);空格=$1;gsub(/./,“&”,空格);打印“空格”(“$1”)”}
b l u e(蓝色)

@EricRenouf我已经设法分别获取了空格和标记(and),但似乎找不到获取(word)部分的方法。
$ a=blue.wav
$ echo $a | awk '{gsub( /.[^.]*$/, "", $1);spaces=$1; gsub( /./, "& ", spaces); print "<s> " spaces "</s> ("$1")"}'
<s> b l u e </s> (blue)