簡體   English   中英

如何在使用C#執行的ruby腳本中傳遞命令行參數

[英]How to pass command line argument in a ruby script executing it using C#

我正在執行一個ruby腳本,該腳本使用C#代碼接受命令行參數。
sc.rb具有Nessus API集成的邏輯,而yaml文件是作為參數傳遞的配置文件。

這是我目前正在做的事情:

System.Diagnostics.ProcessStartInfo proc = new System.Diagnostics.ProcessStartInfo();

proc.FileName = @"C:\windows\system32\cmd.exe";
proc.Arguments = @"/c C:\\Users\\name\\Documents\\sc.rb --config Nessus.yaml";

此代碼肯定無法正常工作。 有什么方法可以指定命令行參數?

您使用的是文字字符串-例如,開頭的@,但隨后轉義了斜杠,因此它將斜杠加倍。 省略雙\\或@

例如

System.Diagnostics.ProcessStartInfo proc = new System.Diagnostics.ProcessStartInfo();

proc.FileName = @"C:\windows\system32\cmd.exe";
proc.Arguments = @"/c C:\Users\name\Documents\sc.rb --config Nessus.yaml";

暫無
暫無

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

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