GetHelpBrowserLocationMetaTag Rest LinkTrail Tags First Null
Mathematica 9 is now available
 /

2.11.4 命名及查找文件

对文件命名的细节随计算机系统的不同而改变,但 Mathematica 提供了所有系统可用的一般机制.
正如在 1.11.2 节中所述,Mathematica 假定文件放置在各种级别的目录中, 要找出一个文件时,不仅要知道文件名,还要知道该文件所在的目录序列.
在任何时刻有一个当前工作目录,要确定一个文件或目录时就要给出 它们相对于该目录的位置. 当要指定该目录中的一个文件时,就不需要 给出目录信息,只需给出文件名即可.

目录操作

这里给出当前工作目录字符串

设置当前工作目录是 Packages 子目录

现在的工作目录与以前的不同

转到以前的工作目录

调用 SetDirectory 时可以给出所用操作系统能识别的任何目录名.例如,在 Unix 系统中, 可以用 .. 指定上一级目录,用 ~ 指定主目录.
SetDirectory 进入一个目录时,Mathematica 总要提示前一个目录. 可以用 ResetDirectory 返回到前一目录. Mathematica 一般维持一个由 DirectoryStack[ ] 给出的目录堆栈,每次调用 SetDirectory 时就向堆栈中加一个新目录, 而每一次调用 ResetDirectory 时就从堆栈中删除一个目录.

特殊目录

当给出一个文件后,Mathematica 一般要经过几步来找到所需的文件. 第一步是使用所用操作系统或命令解释程序中的标准机理.
Mathematica 检查所给文件的全名,看是否有 *, $, ~, ?, [, ", \ 和 ' 等 通配符. 发现了这些字符时,就将全名送到操作系统或命令解释程序 去解释,这意味着在使用 Unix 系统时, name*$VAR 等构造将在此处展开. 但一般地,Mathematica 获取操作系统或命令解释程序的结果,并将其作为 文件全名.
对输出文件而言,这是 Mathematica 进行的最后一个处理. 当 Mathematica 没有找到所指定的文件时,它就产生这个文件.
当从一个文件输入时,Mathematica 要进行另一轮的输入. Mathematica 查看应该搜索的 Path 选项值. Path 选项的默认设置 是全局变量 $Path.

文件的搜索路径

一般地,全局变量 $Path 的定义是字符串列表,其中每个字符串代表一个子目录. 每输入一个文件后,Mathematica 就逐个将这些目录临时作为当前工作目录, 从其中寻找所给的文件.

这是 $Path 的一个典型设置先列出的是当前目录 (.) 和主目录 (~)

在特定目录中得到一个文件列表

这里是当前工作目录中所有结尾为 .m 的文件列表

这里列出了在以 P 开头的子目录中和当前工作目录中以 a 开头的文件

FileNames 的返回值是对应于文件名的字符串. 当返回到一个在当前目录中的文件时 ,它给出相对于当前目录的文件名. 所有文件名的格式适合于产生它们的 计算机系统.

文件名操作

应该看到不同计算机系统以不同的方式给出文件名. 例如,微软视窗系统 的形式一般是 dir:\dir\#dir\#name ,Unix 的形式是 dir/dir/name , Macintosh 系统的形式是 :dir:dir:name. 函数 ToFileName 根据所用的 计算机系统以适当的方式组成文件名.

这里给出了文件的目录部分

这里构造了 test.m 所在目录中另一个文件的全名

当要建立一个相关文件的集合时,当读一个文件时能涉及另一个文件往往是 方便的. 全局变量 $Input 给出当前输入的文件名. 用 DirectoryNameToFileName 就可以方便地指定其它相关的文件名.

找出涉及 Mathematica 当前正在读的文件的方法



Any questions about topics on this page? Click here to get an individual response.Buy NowMore Information
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.