LearningENVI&IDL分享 http://blog.sciencenet.cn/u/dongyanqing Learning ENVI&IDL

博文

IDL中搜索文件file_search函数的用法

已有 16652 次阅读 2012-11-8 00:14 |个人分类:IDL技术|系统分类:科研笔记| 搜索, IDL, file_search

    对海量数据处理特别是批处理来说,文件搜索非常重要。IDL提供了一个搜索文件或文件夹的函数file_search,功能强大。以文件结构如下图的“c:temp”为例,常用的几种调用方法如下:

 

1、  搜索当前目录下的所有文件

IDL>;获得当前工作目录

IDL> cd,current = workDir

IDL>;输出查看工作目录

IDL> print,workDir

C:UsersAdministrator

IDL>;搜索工作目录下的所有文件,统计结果到变量num

IDL> r = file_search(count = num)

IDL>;查看统计个数

IDL> print,num

          30

IDL>;各文件名称以字符串方式存储在返回值r

IDL> help,r

R               STRING    = Array[30]

 

2、  搜索文件夹“c:temp”下的所有文件和文件夹;

IDL> r = file_search('c:temp','*',count = num)

IDL>;查看统计个数

IDL> print,num

           8

IDL>;输出完整路径名

IDL> print,r

C:tempa.txt C:tempaaa.pro C:tempaba.pro C:temp文件夹1 C:temp文件夹1c.pro C:temp文件夹1d.pro

C:temp文件夹1文件夹2 C:temp文件夹1文件夹2e.pro

3、  搜索文件夹“c:temp”下的所有文件,不包含文件夹;

IDL> r = file_search('c:temp','*',count = num,/test_regular)

IDL>;查看统计个数

IDL> print,num

           6

IDL>;输出完整路径名

IDL> print,r

C:tempaaa.pro C:tempaba.pro C:temp可执行.exe C:temp文件夹1c.pro C:temp文件夹1d.pro C:temp文件夹1文件夹2e.pro

 

4、  搜索文件夹“c:temp”下的所有文件夹,不包含文件;

 

IDL> r = file_search('c:temp','*',count = num,/test_directory)

IDL>;查看统计个数

IDL> print,num

           2

IDL> print,r

C:temp文件夹1 C:temp文件夹1文件夹2

 

5、  搜索文件夹“c:temp”中的所有文件,不搜索子目录;

IDL> r = file_search('*',count = num,/test_regular)

IDL>;查看统计个数

IDL> print,num

           3

IDL> print,r

aaa.pro aba.pro 可执行.exe

6、  搜索文件夹“c:temp”中的所有可执行文件(Windows下文件后缀为exe);

IDL> r = file_search('*',count = num,/test_executable,/test_regular)

IDL>;查看统计个数

IDL> print,num

           1

IDL> print,r

可执行.exe

7、  搜索文件夹“c:temp”中的扩展名为“.pro”的文件;

IDL> r = file_search('*.pro',count = num,/test_regular)

IDL>;查看统计个数

IDL> print,num

           2

IDL> print,r

aaa.pro aba.pro

 

8、  搜索文件夹“c:temp”中的名称中含有“b”的所有文件;

IDL> r = file_search('*b*',count = num,/test_regular)

IDL>;查看统计个数

IDL> print,num

           1

IDL> print,r

aba.pro

 

 

 



https://blog.sciencenet.cn/blog-344887-630319.html

上一篇:IDL中针对数组某一列进行排序
下一篇:IDL下文件创建、更新openw/openu的用法,附代码,看注释
收藏 IP: 58.57.0.*| 热度|

2 李宇斌 王萌杰

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-25 07:19

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部