使用动态值从模板txt文件输出文本

时间:2014-02-11 17:07:04

标签: c# windows cmd

我有一个模板txt文件(例子):

  

test_asd =值
  这是文件的结尾

我需要在value

的位置创建具有不同值的其他文本文件

我正在编写一个程序,以便在C#中使用它(使用子进程cmd.exe和命令)

我已尝试设置环境变量,但输出与原始模板文件没有区别。

的test.txt:

  

test_asd =%VALUE%
  这是文件的结尾

C#:

Environment.SetEnvironmentVariable("VALUE", "test");

Process p = new Process();
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = "cmd.exe";
psi.UseShellExecute = false;
psi.CreateNoWindow = true;
psi.RedirectStandardInput = true;
psi.RedirectStandardOutput = true;
p.StartInfo = psi;

p.Start();

p.StandardInput.WriteLine("type test.txt");
p.StandardInput.WriteLine("exit");

p.WaitForExit();

string output = p.StandardOutput.ReadToEnd();
Console.WriteLine(output);

Console.ReadLine(); // wait for 'Enter' to exit

有办法做到这一点吗?

1 个答案:

答案 0 :(得分:0)

我弄清楚了,这是命令:

type test.txt | sed.exe -e "s/\${value}/test/"

使用UnxUtils

感谢this SO question