Существуют ли какие-либо методы .Net, которые могут извлекать путь и имя файла из командной строки Windows и не включать аргументы?Получить имя_файла из команды с аргументами
var p = @"c:\somefolder\someConsoleApp.exe -k Something -i -user Bob"
Я попытался с помощью FileInfo, Path.GetFileName, и другие, каждый раз, когда объект имеет в нем команды.
Например,
var fileName = System.IO.Path.GetFileName(p);
Console.WriteLine(fileName);
выход
someConsoleApp.exe -k Something -i -user Bob
Я хочу, чтобы получить только "someConsoleApp.exe" Предпочтительно, имеющий доступ к аргументам к.
ProcessStartInfo может сделать это как-то, но имеет ту же проблему, что и в FileName, и Аргументы пустые.
Нет, так как файл ** ** может иметь следующее имя: 'someConsoleApp.exe -k что-то -i -user Bob' ,Вы должны разобрать его вручную –
Почему бы вам просто не разделить эту строку в первую очередь? – rinukkusu
Вам нужно обрабатывать потенциальные пространства на пути к exe? И если бы этот путь был процитирован? Это действительно единственное, что может помешать вам просто расстаться по космосу. – juharr