此方法将确保符号链接是否存在。如果它不存在,它将创建目录结构。
createSymlink(srcPath, destPah[, type] [, callback])
srcPath – 文件的源路径。
destPath – 文件的目标路径。
type – 此参数仅在 Windows 上可用,并且在platforms.The此参数的其他可能值是 dir、file 或junction 时被忽略。
callback - 如果发生任何错误,此函数将提供回调。
在继续之前检查 fs-extra 是否已安装;如果没有,请安装 fs-exra。
您可以使用以下命令来检查是否安装了 fs-extra。
npm ls fs-extra
创建一个createSymlink.js并将以下代码片段复制粘贴到该文件中。
现在,运行以下命令来运行以下代码片段。
节点 createSymlink.js
const fs = require('fs-extra') const srcPath = '/tmp/file.txt' const destPath = '/tmp/dest/file.txt' // 使用回调创建符号链接: fs.ensureSymlink(srcPath, destPath, err => { console.log(err) // 这将返回空值。 // 成功创建符号链接 }) // 使用 Promise 创建符号链接: fs.ensureSymlink(srcPath, destPath) .then(() => { console.log('success!') }) .catch(err => { console.error(err) }) // 使用 async/await 创建符号链接: async function createSymlinkExample (src, dest) { try { await fs.ensureSymlink(src, dest) console.log('Success!') } catch (err) { console.error(err) } } createSymlinkExample(srcPath, destPath)
C:\Users\nhooo\> node createSymlinkExample.js null { [Error: EEXIST: file already exists, symlink '/tmp/file.txt' -> '/tmp/dest/file.txt'] errno: -17, code: 'EEXIST', syscall: 'symlink', path: '/tmp/file.txt', dest: '/tmp/dest/file.txt' } { [Error: EEXIST: file already exists, symlink '/tmp/file.txt' -> '/tmp/dest/file.txt'] errno: -17, code: 'EEXIST', syscall: 'symlink', path: '/tmp/file.txt', dest: '/tmp/dest/file.txt' }
此方法还确保符号链接存在。如果不存在,则创建目录结构。
createSymlinkSync(srcPath, destPath[, type])
srcPath – 文件的源路径。
destPath – 文件的目标路径。
type – 此参数仅在 Windows 上可用,在其他平台上被忽略。此参数的可能值为dir、file 或junction。
在继续之前检查 fs-extra 是否已安装;如果没有,请安装 fs-exra。
您可以使用以下命令来检查是否安装了 fs-extra。
npm ls fs-extra
创建一个createSymlinkSyncExample.js并将以下代码片段复制粘贴到该文件中。
现在,运行以下命令来运行以下代码片段。
node createSymlinkSyncExample.js
代码片段-
const fs = require('fs-extra') const srcPath = '/tmp/file.txt' const destPath = '/tmp/dest2/file.txt' fs.ensureSymlinkSync(srcPath, destPath) console.log('Success... !')
C:\Users\nhooo\> node createSymlinkSyncExample.js Success... !