2016-07-04 7 views
1

из nodejs documentation на fs.mkdtempРазделительный через бя платформ

const tmpDir = '/tmp'; 
const subdir = '/com.domain.app'; 

!fs.existsSync(tmp + subdir) ? fs.mkdirSync(tmp + subdir) : null; 

// This method is *CORRECT*: 
const path = require('path'); 
fs.mkdtemp(tmpDir + path.sep + subdir + path.sep, function(err, folder){ 
    if (err) throw err; 
    console.log(folder); 
}); 

Мой вопрос связан с path.sep и временных каталогов, и я хочу код, чтобы быть от платформы, и, чтобы иметь возможность работать на нескольких платформах ,

  1. какое значение будет path.sep на всех платформах nodejs.
  2. Каково значение каталога tmp для всех платформ nodejs.
  3. : /tmp Доступен на окнах?
  4. любых предложений по выше коде, когда речь идет о временных каталогах/пути

Благодарность

ответ

1

Используйте os.tmpDir и path.join функции для перекрестного кода платформы.

var tmp = require('os').tmpDir(); 
var dest = path.join(tmp, "com.domain.app"); 

!fs.existsSync(dest) ? fs.mkdirSync(dest) : null; 

Ссылка. Writing cross platform node