Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Package.json在$HOME/Sites文件夹中创建文件夹_Javascript_Gulp - Fatal编程技术网

Javascript 使用Package.json在$HOME/Sites文件夹中创建文件夹

Javascript 使用Package.json在$HOME/Sites文件夹中创建文件夹,javascript,gulp,Javascript,Gulp,我试图在启动一个web项目时尽可能地自动化,从而使我的生活变得更轻松 我使用下面的脚本获取gulpfile.js以获取$HOME文件夹及其父目录 Gulpfile.js const homedir = require("os").homedir(); var path = require("path"); var pathDir = require("path").resolve(__dirname, "../../"); var parentDir = path .dirname(path

我试图在启动一个web项目时尽可能地自动化,从而使我的生活变得更轻松

我使用下面的脚本获取gulpfile.js以获取$HOME文件夹及其父目录

Gulpfile.js

const homedir = require("os").homedir();
var path = require("path");
var pathDir = require("path").resolve(__dirname, "../../");
var parentDir = path
  .dirname(pathDir)
  .split(path.sep)
  .pop();
然后,我使用以下脚本查找$HOME并命名文件以匹配父级

key: homedir + "/.config/valet/Certificates/" + parentDir + ".test.key",
当名称没有特殊字符或空格时,此操作非常有效,如果父项的名称类似于“a&B Taxis”,则会中断

我需要脚本删除任何空格和特殊字符,以便“parentDir”的输出为abtaxis

我想出了这个方法来删除空格,但它还不能删除任何字符

const homedir = require("os").homedir();
var path = require("path");
var pathDir = require("path").resolve(__dirname, "../../");
var parentDir = path
  .dirname(pathDir)
  .split(path.sep)
  .pop();

var newParent = parentDir.split(" ").join("_");

parentDir
可以简化为:

var parentdir = path.basename(path.dirname(pathDir));

   // should get rid of all non-a-zA-Z0-9_ characters.
parentdir = parentDir.replace(/[^\w]/g, "");

  // if you need it lowercase use this instead
parentdir = parentDir.replace(/[^\w]/g, "").toLowerCase();

parentDir
可以简化为:

var parentdir = path.basename(path.dirname(pathDir));

   // should get rid of all non-a-zA-Z0-9_ characters.
parentdir = parentDir.replace(/[^\w]/g, "");

  // if you need it lowercase use this instead
parentdir = parentDir.replace(/[^\w]/g, "").toLowerCase();