fs-extra 中的 ensureSymlink() 函数 - NodeJS


异步 ensureSymlink() 简介

此方法将确保符号链接是否存在。如果不存在,它将创建目录结构。

语法

createSymlink(srcPath, destPah[, type] [, callback])

参数

  • srcPath – 文件的源路径。

  • destPath – 文件的目标路径。

  • type – 此参数仅在 Windows 上可用,在其他平台上被忽略。此参数的可能值为 dir、file 或 junction。

  • callback – 如果发生任何错误,此函数将提供回调。

示例

  • 在继续之前,请检查是否已安装 fs-extra;如果没有,请安装 fs-exra。

  • 您可以使用以下命令检查 fs-extra 是否已安装。

npm ls fs-extra
  • 创建一个 **createSymlink.js** 并将以下代码片段复制粘贴到该文件中。

  • 现在,运行以下命令来运行以下代码片段。

node createSymlink.js

const fs = require('fs-extra')

const srcPath = '/tmp/file.txt'
const destPath = '/tmp/dest/file.txt'

// Creating Symlink with a callback:
fs.ensureSymlink(srcPath, destPath, err => {
   console.log(err) // This will return null.
   // Successfully created the symlink
})

// Creating Symlink with Promises:
fs.ensureSymlink(srcPath, destPath)
.then(() => {
   console.log('success!')
})
.catch(err => {
   console.error(err)
})

// Creating Symlink with 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\tutorialsPoint\> 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' }

ensureSymlinkSync() 简介

此方法还确保符号链接存在。如果不存在,它将创建目录结构。

语法

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\tutorialsPoint\> node createSymlinkSyncExample.js
Success... !

更新于: 2021-04-27

299 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告