fs.symlink 无法在 linux 上创建目录符号链接
fs.symlink can't create directory symlinks on linux
根据 Documentation 创建符号链接 dir
仅在 windows 上可用。
这是我将在终端中使用的命令 ln -r -s ../../../cloud_data/ ./src/data
var fs = require('fs');
var localData = './src/data';
var externalData = '../../cloud_data';
function createSym (){
fs.symlink(externalData, localData, 'dir', function(d){
console.info(d);
});
}
fs.access(localData, fs.constants.F_OK, (err) => {
if (!err) {
createSym();
}else{
fs.unlink(localData, (err) => {
if (err) createSym();
});
}
});
我为我的 pre-build
npm 脚本编写了一个脏脚本,它只是创建了一个可怕的小图标,但没有符号链接
下面你可以看到我通过 namo 和 alt 拖动创建了一个符号链接(在左边 cloud_data)
从你上一张图片可以看出符号链接创建得很好。它说 "Type: link" 并列出 "Link target".
符号链接是 "broken" 因为目标路径不存在。
如果您在
中有符号链接
/var/wwww/cloud/websites/www/src/data
目标为../../../cloud_data/
,则对应
/var/wwww/cloud/websites/www/src/../../../cloud_data/
减少到
/var/wwww/cloud/cloud_data/
不存在。
您是指 ../../../../cloud_data
(或者只是一个绝对路径,/var/wwww/cloud_data
)吗?
根据 Documentation 创建符号链接 dir
仅在 windows 上可用。
这是我将在终端中使用的命令 ln -r -s ../../../cloud_data/ ./src/data
var fs = require('fs');
var localData = './src/data';
var externalData = '../../cloud_data';
function createSym (){
fs.symlink(externalData, localData, 'dir', function(d){
console.info(d);
});
}
fs.access(localData, fs.constants.F_OK, (err) => {
if (!err) {
createSym();
}else{
fs.unlink(localData, (err) => {
if (err) createSym();
});
}
});
我为我的 pre-build
npm 脚本编写了一个脏脚本,它只是创建了一个可怕的小图标,但没有符号链接
下面你可以看到我通过 namo 和 alt 拖动创建了一个符号链接(在左边 cloud_data)
从你上一张图片可以看出符号链接创建得很好。它说 "Type: link" 并列出 "Link target".
符号链接是 "broken" 因为目标路径不存在。
如果您在
中有符号链接/var/wwww/cloud/websites/www/src/data
目标为../../../cloud_data/
,则对应
/var/wwww/cloud/websites/www/src/../../../cloud_data/
减少到
/var/wwww/cloud/cloud_data/
不存在。
您是指 ../../../../cloud_data
(或者只是一个绝对路径,/var/wwww/cloud_data
)吗?