विंडोज के बराबर कोई प्रत्यक्ष नहीं है /dev/stdout
।
यहाँ एक सी # प्रोग्राम लिखने का मेरा प्रयास है जो एक नामांकित पाइप बनाता है , जिसे प्रोग्राम ए के नाम के रूप में दिया जा सकता है। .NET v4 की आवश्यकता है।
(C # क्योंकि कंपाइलर .NET रनटाइम के साथ आता है, और इन दिनों कंप्यूटर में .NET क्या नहीं है?)
PipeServer.cs
using System;
using System.IO;
using System.IO.Pipes;
class PipeServer {
static int Main(string[] args) {
string usage = "Usage: PipeServer <name> <in | out>";
if (args.Length != 2) {
Console.WriteLine(usage);
return 1;
}
string name = args[0];
if (String.Compare(args[1], "in") == 0) {
Pipe(name, PipeDirection.In);
}
else if (String.Compare(args[1], "out") == 0) {
Pipe(name, PipeDirection.Out);
}
else {
Console.WriteLine(usage);
return 1;
}
return 0;
}
static void Pipe(string name, PipeDirection dir) {
NamedPipeServerStream pipe = new NamedPipeServerStream(name, dir, 1);
pipe.WaitForConnection();
try {
switch (dir) {
case PipeDirection.In:
pipe.CopyTo(Console.OpenStandardOutput());
break;
case PipeDirection.Out:
Console.OpenStandardInput().CopyTo(pipe);
break;
default:
Console.WriteLine("unsupported direction {0}", dir);
return;
}
} catch (IOException e) {
Console.WriteLine("error: {0}", e.Message);
}
}
}
संकलन:
csc PipeServer.cs /r:System.Core.dll
csc
में पाए जा सकते हैं %SystemRoot%\Microsoft.NET\Framework64\<version>\csc.exe
उदाहरण के लिए, 32-बिट Windows XP पर .NET क्लाइंट प्रोफ़ाइल v4.0.30319 का उपयोग करना:
"C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\csc.exe" PipeServer.cs /r:System.Core.dll
Daud:
PipeServer foo in | programtwo
एक खिड़की में, और:
programone \\.\pipe\foo
खिड़की दो में।
Unity.exe -batchmode -projectPath C:\***\Application -logFile -buildWebPlayer web -quit
:। तर्क (फ़ाइल नाम) के बिना-logFile
- यह कंसोल को आउटपुट प्रिंट करना चाहिए, लेकिन यह नहीं करता है। CON (यानी --logFile CON
) जोड़ने के बाद यह :-)