IDL中的基本文件操作

来自Shiyin's note
跳到导航 跳到搜索
  • FILE_BASENAME:去除文件的目录,扩展名等,例:
PRINT, FILE_BASENAME('/usr/local/itt/idl/lib/dist.pro', '.pro')
IDL prints:
dist
  • FILE_CHMOD
FILE_CHMOD, 'moose.dat', '664'o
  • FILE_COPY
FILE_COPY, 'myroutine.pro', 'myroutine.pro.backup'
  • FILE_DELETE
FILE_DELETE, 'moose'
  • FILE_DIRNAME
temp = DIST(4) ; Ensure that DIST is compiled 
PRINT, FILE_DIRNAME((ROUTINE_INFO('DIST', $ 
  /FUNCTION, /SOURCE)).path) 
Depending on the platform and location where IDL is installed, IDL prints something like:
/usr/local/itt/idl/lib 
  • FILE_LINES
文件的行数,很有用。
  • FILE_LINK
  • FILE_MKDIR
  • FILE_MOVE
  • FILE_SAME
  • FILE_SEARCH

这个命令可以相当于shell里面的ls,支持通配符

IDL>print,file_search(count=N)
IDL>print,file_search(/test_directory) ;显示文件夹,这个命令可以一次性输出所有子目录
datafiles = FILE_SEARCH('*.dat', /FOLD_CASE) ;通配符,不分大小写
  • FILE_EXPAND_PATH
得到一个不依赖于平台的完整的路径,等效于file_search中的/FULLY_QUALIFY_PATH关键字
IDL>CD,'~',CURRENT=old_dir  ; shell里面的cd在IDL中是CD, CURRENT实现了PWD的功能
IDL>print,file_expand_path()
  • FILE_TEST
判断文件是否存在,应该可以替代exist程序