Praat脚本-002 | 获取一个目录里的所有文件名称

批量获取目录下文件名
本文介绍如何在Windows和Mac系统中使用简单命令批量获取指定目录下的所有文件名,特别聚焦于.wav音频文件的提取。文章详细展示了如何利用DOS命令、Mac命令以及Praat脚本来实现这一目标。

今天的文章还是之前打包的一个脚本的解释,这个脚本非常简单,只有几行,功能也很简单,是为了得到一个目录里的所有文件名,这个脚本也可以作为学习如何使用、编写脚本的一个很好的例子。

假设我们想知道目录E:\Biaobei_Demo里有多少个wav,并且得到这些文件名,如下:

000001.wav
000002.wav
000003.wav
000004.wav
000005.wav
000006.wav
000007.wav
000008.wav
000009.wav
...

其实通过简单的Dos命令一句话就可以实现,不过为了更多的练习脚本,建议有兴趣的同学试一下脚本的操作。那么DOS命令/Mac命令如何操作呢?
windows下,使得快捷键win+R,点出来运行窗口,或者点开始-运行,在里面输入cmd然后点确定
在这里插入图片描述
仅通过一行命令就可以实现,首先通过pushd命令转换到你要列出文件名的目录里,这里是E:\Biaobei_Demo目录,然后使用dir命令就可以操作了,后面的>号是重定向,意思是将dir命令的结果保存到后面这个文件里。

C:\Users\shao>pushd E:\Biaobei_Demo
E:\Biaobei_Demo>dir > E:\list.txt

你会看到得到这样的结果:

2020-08-26  22:13    <DIR>          .
2020-08-26  22:13    <DIR>          ..
2020-07-25  14:18             3,766 000001.TextGrid
2017-07-07  10:45           255,404 000001.wav
2020-07-25  14:18             3,757 000002.TextGrid
2017-07-07  10:45           274,604 000002.wav
......

这好象有点乱,我们只想得到文件名,如何操作?加一个参数,/b即可

E:\Biaobei_Demo>dir /b > E:\list.txt

这时候的结果变成:

000002.wav
000003.TextGrid
000003.wav
000004.TextGrid
000004.wav
000005.TextGrid
000005.wav
000006.TextGrid
......

如果我们只想显示某一种文件呢?比如只想得到音频文件或者标注文件。加上一种扩展名限制就好。

E:\Biaobei_Demo>dir *.wav /b > E:\list.txt

结果就变成:

000004.wav
000005.wav
000006.wav
000007.wav
000008.wav
......

无论如何操作,还是比较简单的,如果是在Mac系统,只需要打开终端,使用ls代替dir就好,具体的操作可自行搜索一下。

代码段:

这个脚本只是利用Praat的一个功能,也是很简单的几句话而已。
在这里插入图片描述

运行脚本

打开Praat之后,选择PraatOpen Praat Script...,打开这个脚本,然后在脚本窗口选择RunRun,或者直接使用快捷键Ctrl+R,在弹出来的对话框里,设置以下几个地方,首先以上述示例中的普通话数据为例,本文例子的目录在E盘的Biaobei_Demo目录:

  1. 设置需要提取的文件名的扩展名,这里设置为.wav,有兴趣可以改为其它试一下;
  2. 设置文件夹名称,这里是E:\Biaobei_Demo\
  3. 设置保存结果路径,这里是E:\file_names_biaobei_demo.txt

在这里插入图片描述

设置完毕,点击OK,运行脚本,结果可以到E:\file_names_biaobei_demo.txt查看。

如何获取脚本 https://github.com/feelins/Praat_Scripts

本站所有Praat脚本都可以在上述github的项目目录里找到,如果日常对代码、脚本操作比较熟练的可通过下载、安装、配置github for windows在自己的电脑上通过git clone将代码下载到本机,这样的好处是可以跟主站及时更新代码。
不想费如此脑筋,可以通过点击如下图1位置所示,下载整站的代码,也可直接使用。
download
本文的代码是02-get_file_names\Get_FileNames_of_One_Directory.Praat,点进去之后,还有附带的示例文件,同学可练习使用。脚本里有我的邮箱,有任何问题都可以来信咨询。

关注

关于对本站脚本的使用咨询,以及功能修改,增加等,都可以扫QQ咨询群,私信群主。

在这里插入图片描述

版权说明

1、版权归本公众号“极地语音工作室”,原名“语音处理小站”所有;

2、未经本站或者作者允许, 不得任意转载本文内容,否则将视为侵权;

3、转载或者引用本文内容请注明来源及原作者;

4、对于不遵守此声明或者其他违法使用本站内容者,本人依法保留追究权等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极地语音工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值