タグ付けされた質問 「stdin」

標準入力(stdin、ファイル記述子0)は、プログラムへの入力ストリームです。

22
stdinからどのように読みますか?
私はコードゴルフのチャレンジのいくつかを実行しようとしていますが、それらすべてから入力を取得する必要がありますstdin。Pythonでそれを取得するにはどうすればよいですか?
1472 python  stdin 

9
RubyでのSTDINのベストプラクティス
Rubyのコマンドライン入力を処理したい: > cat input.txt | myprog.rb > myprog.rb < input.txt > myprog.rb arg1 arg2 arg3 ... それを行う最良の方法は何ですか?特に、空白のSTDINを扱いたいので、エレガントな解決策を期待しています。 #!/usr/bin/env ruby STDIN.read.split("\n").each do |a| puts a end ARGV.each do |b| puts b end
307 ruby  stdin 

11
(stdin引数を使用して)subprocess.Popenに文字列を渡すにはどうすればよいですか?
次の場合: import subprocess from cStringIO import StringIO subprocess.Popen(['grep','f'],stdout=subprocess.PIPE,stdin=StringIO('one\ntwo\nthree\nfour\nfive\nsix\n')).communicate()[0] 私は得る: Traceback (most recent call last): File "<stdin>", line 1, in ? File "/build/toolchain/mac32/python-2.4.3/lib/python2.4/subprocess.py", line 533, in __init__ (p2cread, p2cwrite, File "/build/toolchain/mac32/python-2.4.3/lib/python2.4/subprocess.py", line 830, in _get_handles p2cread = stdin.fileno() AttributeError: 'cStringIO.StringI' object has no attribute 'fileno' どうやら、cStringIO.StringIOオブジェクトは、subprocess.Popenに適合するファイルダックに十分近づきません。これを回避するにはどうすればよいですか?
280 python  subprocess  stdin 

15
BashでファイルまたはSTDINから読み取る方法は?
次のPerlスクリプト(my.pl)は、コマンドライン引数のファイルまたはSTDINから読み取ることができます。 while (<>) { print($_); } perl my.pl一方で、STDINから読み込みますperl my.pl a.txtから読み込みますa.txt。これはとても便利です。 Bashに相当するものはありますか?
244 bash  stdin 

10
stdin、stdout、stderrについて混乱していますか?
私はこれら3つのファイルの目的にかなり混乱しています。私の理解が正しければ、stdinプログラムがプロセスでタスクを実行するための要求に書き込むstdoutファイル、カーネルが出力を書き込むstderrファイル、および情報へのアクセスを要求するプロセスがそこにあるファイルであり、すべての例外が入力されます。これらのファイルを開いて実際に発生するかどうかを確認したところ、何も示唆されていないようです。 私が知りたいのは、これらのファイルの目的が正確に何であるか、非常に少ない技術用語で絶対に馬鹿げた答えです!
230 linux  stdout  stdin  stderr 

6
ノードで行ごとに標準入力から読み取る方法
次のようなコマンドライン呼び出しを使用して、nodeでテキストファイルを処理しようとしています。 node app.js < input.txt ファイルの各行は個別に処理する必要がありますが、一度処理すると、入力行を忘れることがあります。 stdinのオンデータリスナーを使用して、バイトサイズでチャンクされた入力ストリームを取得するため、これを設定します。 process.stdin.resume(); process.stdin.setEncoding('utf8'); var lingeringLine = ""; process.stdin.on('data', function(chunk) { lines = chunk.split("\n"); lines[0] = lingeringLine + lines[0]; lingeringLine = lines.pop(); lines.forEach(processLine); }); process.stdin.on('end', function() { processLine(lingeringLine); }); しかし、これはとてもずさんなようです。行配列の最初と最後のアイテムの周りをマッサージする必要があります。これを行うよりエレガントな方法はありませんか?
177 node.js  stdin 

6
文字列をstdinに送信する
これをbashで効果的に行う方法はありますか? /my/bash/script < echo 'This string will be sent to stdin.' 次のようなエコーからの出力をパイプ処理できることを知っています。 echo 'This string will be piped to stdin.' | /my/bash/script

6
フォルダー内のすべてのファイルを開く方法は?
私はpythonスクリプトparse.pyを持っています。このスクリプトでは、file1などのファイルを開いてから、合計文字数を出力することができます。 filename = 'file1' f = open(filename, 'r') content = f.read() print filename, len(content) 現在、標準出力を使用して結果を出力ファイルに出力しています-出力 python parse.py >> output しかし、手動でこのファイルを作成したくないのですが、すべてのファイルを自動的に処理する方法はありますか?お気に入り ls | awk '{print}' | python parse.py >> output 次に、問題はどのように標準化からファイル名を読み取ることができますか?または、lsとその種の作業を簡単に行うための組み込み関数がすでにいくつかありますか? ありがとう!
148 python  file  pipe  stdout  stdin 

9
アプリケーションをだまして、その標準出力をパイプではなくターミナルであると見なす方法
「stdinがターミナルまたはパイプであるかどうかを検出しますか?」の逆を実行しようとしています。 STDOUTでパイプを検出するため、出力形式を変更するアプリケーションを実行しています。リダイレクトするときに同じ出力が得られるように、それがインタラクティブな端末であると考えて欲しいです。 expectスクリプトでラップするかproc_open()、PHPでを使用することで実現できると思っていましたが、そうではありませんでした。 そこに何かアイデアはありますか?
147 bash  terminal  pipe  stdin 


6
stdinがターミナルかパイプかを検出しますか?
python引数なしでターミナルから" " を実行すると、Pythonインタラクティブシェルが表示されます。 cat | python端末から" " を実行すると、インタラクティブモードが起動しません。どういうわけか、何も入力せずに、パイプに接続されていることを検出しました。 CまたはC ++またはQtで同様の検出を行うにはどうすればよいですか?
118 c++  c  qt  pipe  stdin 

6
nodejs stdinからキーストロークを読み取る方法
実行中のnodejsスクリプトで着信キーストロークをリッスンすることは可能ですか?process.openStdin()その'data'イベントを使用してリッスンすると、入力は次の改行までバッファーされます。 // stdin_test.js var stdin = process.openStdin(); stdin.on('data', function(chunk) { console.log("Got chunk: " + chunk); }); これを実行すると、次のようになります。 $ node stdin_test.js <-- type '1' <-- type '2' <-- hit enter Got chunk: 12 私が見たいのは: $ node stdin_test.js <-- type '1' (without hitting enter yet) Got chunk: 1 ルビーなどに相当するnodejsを探していますgetc これは可能ですか?
118 input  node.js  stdin 


9
変数の値をコマンドの標準入力に渡す方法は?
私は、ある程度安全でなければならない、つまりコマンドのパラメーターを通じて安全なデータを渡さず、できれば一時ファイルを使用しないシェルスクリプトを書いています。コマンドの標準入力に変数を渡すにはどうすればよいですか?または、それが不可能な場合、そのようなタスクに一時ファイルを正しく使用するにはどうすればよいですか?
105 security  bash  stdin 

6
Rubyの外部プロセスのSTDOUTから継続的に読み取る
コマンドラインからrubyスクリプトを介してblenderを実行したいのですが、その後、blenderからの出力を行ごとに処理して、GUIのプログレスバーを更新します。ブレンダーが外部プロセスであり、その標準ストリームを読み取る必要があることはそれほど重要ではありません。 ブレンダープロセスがまだ実行されているときに、ブレンダーが通常シェルに出力する進行状況メッセージをキャッチできないようです。いくつかの方法を試しました。ブレンダーがまだ実行されている間ではなく、ブレンダーが終了した後、私は常にブレンダーの標準出力にアクセスしているようです。 失敗した試行の例を次に示します。ブレンダーの出力の最初の25行を取得して出力しますが、ブレンダープロセスが終了した後でのみです。 blender = nil t = Thread.new do blender = open "| blender -b mball.blend -o //renders/ -F JPEG -x 1 -f 1" end puts "Blender is doing its job now..." 25.times { puts blender.gets} 編集: 少し明確にするために、blenderを呼び出すコマンドは、進行状況を示す出力のストリームをシェルに返します(パート1-16が完了したなど)。ブレンダーが終了するまで、出力を「取得」するための呼び出しはブロックされているようです。問題は、blenderが出力をシェルに出力するときに、blenderの実行中にこの出力にアクセスする方法です。
86 ruby  shell  process  stdout  stdin 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.