3.4 创建文件符号链接
符号链接也称为软链接,是一类特殊的文件,这个文件包含另一个文件的路径名(绝对路径或相对路径)。路径可以是任意文件或目录,同硬链接不同的是,符号链接可以链接不同文件系统的文件。
文件系统fs模块提供了fs.symlink()和fs.symlinkSync()两个方法来完成创建文件符号链接的方法的操作。下面介绍一个通过fs.symlink()方法以同步方式创建文件符号链接的代码实例。
【代码3-5】(详见源代码目录ch03-node-fs-symlink-sync.js文件)
【代码分析】
• 为了测试创建文件符号链接的操作,先在代码文件目录中新建一个“txtSymlink”子目录,并新建一个名称为“symlinkSync.txt”的文本文件;同时,将通过fs.symlinkSync()方法以同步方式创建的符号链接“symlinkSyncNew.txt”也将存放在该目录中。
• 第25行和第26行代码声明了两个变量(srcpath和dstpath),分别定义为原始文本文件“symlinkSync.txt”和将要创建符号链接“symlinkSyncNew.txt”的路径。
• 第31行代码通过fs.symlinkSync()方法以同步方式创建了原始文本文件“symlinkSync.txt”的符号链接“symlinkSyncNew.txt”。
• 第39~67行代码通过spawn()方法查看了“txtSymlink”子目录的文件信息。
在控制台中运行该Node程序,具体的输出内容如图3.5所示。
图3.5 创建文件符号链接的方法(同步版本)
如图3.5中的箭头和标识所示,“symlinkSyncNew.txt”是一个符号链接,指向了原始文件“symlinkSync.txt”。由此可见,使用fs.symlinkSync()方法创建的文件符号链接实际上就是文件快捷方式。