stdin

fifoをPythonのstdinにリダイレクトする
stdin

fifoをPythonのstdinにリダイレクトする

$ mkfifo mypipe $ echo "hello redirection" > mypipe $ cat < mypipe hello redirection Pythonを使って上記のタスクを実行しようとすると問題があります。 # pyecho.py with open("/dev/stdin", "r") as f: print(f.read()) $ python3 pyecho.py < mypipe パイプに2回書き込まないと終了しません。 $ echo "hello redirection" >...

Admin

標準出力を複数のテープに保存
stdin

標準出力を複数のテープに保存

24時間ごとに1つずつstdoutに動的に生成される大容量ファイルがあります。これらのファイルをテープに徐々に保存したいと思います。可能であれば、複数のテープにまたがる可能性のある単一のアーカイブに保存したいと思います。 Tarはアーカイブに追加し、次のテープをロードする機能を内蔵しているため、テープ管理に適しています。しかし、標準入力からデータを受け入れるのは非常に悪いです。私が何をしても、最終的にアーカイブの内容の代わりに特別なファイル(リンクまたは名前付きパイプ)がアーカイブに書き込まれます。 以下は私が試したサンプルコマンドです。最初の日には新しいア...

Admin

STDIN、STDOUTなどに関連するファイル記述子を識別する方法
stdin

STDIN、STDOUTなどに関連するファイル記述子を識別する方法

私はこれを知らせるいくつかのコマンドや環境変数を覚えているようです。たとえば、私は基本的に端末で何かを実行したいと思います。 echo $STDIN /dev/tty echo $STDOUT /dev/tty fdescribe 0 or fdescribe /dev/stdin /dev/tty fdescribe 1 or fdescribe /dev/stdout /dev/tty ただし、スクリプトまたはサブプロセスで実行できます。 ...

Admin

端末から入力を読み取るスクリプトです。 stdoutリダイレクトを使用してスクリプトを呼び出す場合は、ttyとstdoutで印刷するようにスクリプトに指示しますか?
stdin

端末から入力を読み取るスクリプトです。 stdoutリダイレクトを使用してスクリプトを呼び出す場合は、ttyとstdoutで印刷するようにスクリプトに指示しますか?

端末にユーザーの入力を必要とするスクリプトがあるため、stdoutをファイルにリダイレクトしてスクリプトを呼び出すと、ユーザーにプロンプ​​トのコンテキストはありません。だから、標準出力を両方のサイトにコピーしたいと思います。 スクリプトは微積分を出力するので、stdoutリダイレクトを許可することはまだ意味があります。 ただし、stdinが提供されている場合(yesコマンドやcronなどの非対話型コンテキストに似ている)、ttyに存在する必要なく出力を許可するのは妥当です。 だから、次のようなロジックを実行したいと思います。 If (test -t 0 &...

Admin

標準入力ストリームリダイレクト
stdin

標準入力ストリームリダイレクト

stdin:一般的な標準入力(の略stdin)はキーボードから来ます。 stdin入力するときは(標準入力端子)に入力してください。標準入力デバイス(通常はキーボード)を使用しますが、Linuxではファイルから標準入力を取得することもできます。 たとえば、 cat < myfirstscript catこれは、キーボードではなくファイルから入力を受け取るように指示しますmyfirstscript(もちろん:)と同じですcat myfirstscript。 cat基本的に、これはコマンド()への入力が予想される場所(キーボード)から出てこなくてもファ...

Admin

標準入力から1行を読み込んでファイルに書き込む
stdin

標準入力から1行を読み込んでファイルに書き込む

bashにstdinから1行を読み、ファイルに直接書き込む方法はありますか?それは次のとおりです。 t="$(mktemp)" while true do [read single line from stdin] > "${t}" [nothing to read] && break printf '%s\n' "$t" t="$(mktemp)" done 使用可能なメモリが制限されているため、行が途方もなく長くなる可能性があります。それ以外の場合は、読み込み中にループを実行します。 編集する: 抽出とフィルタリン...

Admin

複数ファイルのxargs出力を1つのファイルとして保存
stdin

複数ファイルのxargs出力を1つのファイルとして保存

次の3つのテキストファイルがあります。 #1.txt hey stackoverflow #2.txt hey stackexchange #3.txt hello world 私はこのコマンドを使って私のディレクトリの最後の3つのファイルをリストし、それをリストし、cat3つのファイルのすべての出力をファイル(all.txt)に保存します。 注文する: ls -alth *txt | head -3 | xargs -n1 cat 出力をファイルにリダイレクトするにはどうすればよいですか? ...

Admin

引用符文字は、標準入力にリダイレクトするコマンドとして使用されます。
stdin

引用符文字は、標準入力にリダイレクトするコマンドとして使用されます。

私は学生で、ファイル名に引用符、二重引用符、その他の記号を含む単語を割り当てる練習を試みています。 問題は、期待した結果が得られないことです。 スケープバーを使用してシンボルをスケープしていますが、ファイル名を一覧表示すると、ファイル名の先頭と末尾に予期しない一重引用符が表示され、スケープバーは一重引用符の前になければならない一重引用符で囲まれています。ファイル名の一部です。やや混乱しています。以下をお見せします。 $ echo > \"\\\?\$\*\'\'\*\$\?\\\" 私はこれを期待する: $ ls "\?$*''*$?\" しかし、...

Admin

Bash - 標準入力に何も含まれていることを確認する
stdin

Bash - 標準入力に何も含まれていることを確認する

私はこの質問を何度も受けましたが、私には役に立たないようです。 [[ ! -t 0 ]]=標準入力にはどのような内容が含まれていますか? このコマンドは次のとおりです。 echo 'Hello world' | [[ ! -t 0 ]] echo $? 正しい出力を提供します。0つまり、標準入力には何も含まれます。 このコマンドは次のとおりです。 [[ ! -t 0 ]] echo $? 正しい出力を提供します。1つまり、標準入力は空です。 代わりに、次のコマンドを使用してください。 : | [[ ! -t 0 ]] echo $? 予期しない出力を提...

Admin

改行文字をエンコードせずにBase64に改行文字の後にエンコードされた出力を印刷させる方法は?
stdin

改行文字をエンコードせずにBase64に改行文字の後にエンコードされた出力を印刷させる方法は?

私はbase64コマンドペースト入力を呼び出して、末尾の改行を避けるためにダブルタップしてCtrl + Dstdinでエンコードするのが好きです(改行が入力の一部になることを望まない場合)。echoシェル履歴にデータを残さないようにします。 ただし、出力は入力の直後に作成されるため、値を取得するのは困難です。 $ base64 Input without trailing newlineSW5wdXQgd2l0aG91dCB0cmFpbGluZyBuZXdsaW5l 私が似ている方法はありませんか? $ base64 Input without trail...

Admin

シェルスクリプトの標準入力をバックグラウンドコマンドに渡す方法
stdin

シェルスクリプトの標準入力をバックグラウンドコマンドに渡す方法

シェルスクリプトでは、シェルスクリプトと同じ標準入力を使用してバックグラウンドコマンドを開始しようとします。 #!/bin/sh # ... the-program & ただし、the-program上記の方法はシェルスクリプトと同じ標準入力にアクセスできません。私のシェルマニュアルによると(ダッシュ(1)): シェルが対話型でない場合、非同期コマンドの標準入力はに設定されます/dev/null。 試してみましthe-program & <&0たが、欲しい効果が得られなかったようです。標準入力はthe-programまだ...

Admin

SSHを使用してスクリプトを実行すると、stdin入力が私の変数を置き換えたり破損したりするのはなぜですか?
stdin

SSHを使用してスクリプトを実行すると、stdin入力が私の変数を置き換えたり破損したりするのはなぜですか?

GNUバッシュ、バージョン4.3.27 出力をファイルに書き込むスクリプトに奇妙な問題があります。サーバーリストに接続し、一部のサービスのステータス/サブステータスを記録するようにsshをスクリプトします。次に、結果を配列に保存します。 しかし、コンソールウィンドウの実行中に何かを入力すると、入力が配列に保存されますが、$result_arrその理由はわかりません。 #!/bin/bash check_services() { server_number="$1" local result local result_arr local e...

Admin

`...bash`のベストプラクティスでスクリプトインタラクションを再取得するには?
stdin

`...bash`のベストプラクティスでスクリプトインタラクションを再取得するには?

次の簡単なスクリプトがあるとしますquestion。 #!/bin/bash read -rp "What's your name?" ans echo "Your name is $ans" cat私たちの例を試してみましょう cat question | bash スクリプトファイルの内容をBashの標準入力に提供し、それをコマンドとして実行します。実行すると、bashの標準入力が使用されるため、パイプの前に配置されていない限り、パイプの外側のものは標準入力に入力できません。 これを軽減するための1つのオプションは、スクリプトファイルの内容をダウ...

Admin

Linuxでは、標準の入力、出力、およびエラーファイル記述子はいつどこで初めて開きますか?
stdin

Linuxでは、標準の入力、出力、およびエラーファイル記述子はいつどこで初めて開きますか?

stdin、stdout、stderr(fds)はどこにありますか?最初開いている?カーネルで作ったのですか?シンボリックリンク/dev/std{in,out,err}はいつどこで作成されましたか?これを行うコードはどこにありますか? 私はそれがLinuxカーネルソースにあると仮定していますが、archlinux 6.5.3-arch1-1 Linuxカーネルのgithubリポジトリで検索した後でもどこで発生するのかわかりません。 編集:この質問に反対票を投げたら、私がもっとうまくいくように理由を説明してください。この質問は本当に知りたいです。答えを見つける...

Admin