簡體   English   中英

在node.js命令行中解析包含正斜杠的字符串

[英]Parsing of strings containing forward slash in node.js command line

嗨,我正在編寫一個節點js應用程序,我需要在其中通過命令行將路徑傳遞給某些文件。 我需要這樣做以進行配置。 我知道我可以將所有配置詳細信息放在json文件中,然后將其加載到應用程序中。 但這是一個特定的要求。

這是我的代碼

app.js

  ----
  -----
  console.log(process.argv); 
  ---
  --
 // Start server

現在,當我在節點中以以下方式運行此文件時:

 node app.js hii

輸出量

 'hii'

但是如果我這樣做

node app.js '/samplePath'

我在DOS中得到以下輸出:

'\'/samplePath\''

我在Git Bash中得到以下輸出:

'C:/Program Files/Git/samplePath'

我如何只獲得“ / samplePath”作為輸出? 我究竟做錯了什么? 任何幫助,將不勝感激。

為了得到最后的項目,嘗試

 process.argv[2].split(/\//).pop();

您將必須自行分析命令行選項。 但是,您可以研究此節點模塊,它將使您輕松完成這一工作。

npm install commander

這是他們的Github頁面上的示例

var program = require('commander');

program
  .version('0.0.1')
  .option('-p, --peppers', 'Add peppers')
  .option('-P, --pineapple', 'Add pineapple')
  .option('-b, --bbq', 'Add bbq sauce')
  .option('-c, --cheese [type]', 'Add the specified type of cheese [marble]', 'marble')
  .parse(process.argv);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM