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

パイプまたは名前付きパイプは、明示的に連携するように設計されていなくても、個別のプロセスが互いに通信できるようにするPOSIX標準の機能です。

3
どのようにして、実際のコマンドを決定していますか?
と呼ばれるbashスクリプトがあるとしlog.shます。このスクリプトでは、パイプから入力を読み取りたいのですが、パイプで入力を入力するために使用するコマンドも知りたいです。例: tail -f /var/log/httpd/error | log.sh シェルスクリプトで、コマンドについて知りたいtail -f /var/log/httpd/error。
9 linux  bash  pipe 

6
PIPESTATUSとbashスクリプトの出力の両方を取得する方法
このコマンドでファイルの最終更新日を取得しようとしています TM_LOCAL=`ls -l --time-style=long-iso ~/.vimrc | awk '{ print $6" "$7 }'` この行の実行後、TM_LOCALの値は「2012-05-16 23:18」のようになります。 また、PIPESTATUSをチェックして、エラーが発生したかどうかを確認したいと思います。たとえば、ファイルが存在しない場合lsは2を返しますが、戻り$?値はなので、値は0ですawk。 このコマンドを単独で実行すると、lsの戻り値を確認できます。 ${PIPESTATUS[0]} ls -l --time-style=long-iso ~/.vimrc | awk '{ print $6" "$7 }' しかし$PIPESTATUS、最初の例のように出力を変数に割り当てた場合、期待どおりに動作しません。この場合、$PIPESTATUS配列には次と同じ1つの要素しかありません。$? それで、問題は、どうすれば両方を取得$PIPESTATUSし、同時に出力を変数に割り当てることができるでしょうか?
9 bash  pipe 

1
ビデオから抽出されたffmpegパイプ画像
次のコマンドを使用すると、ffmpegを使用してビデオから画像を抽出し、ファイルシステムに保存できます。 ... | ffmpeg -i - -f image2 'img-%03d.png' これらの画像をファイルシステムに保存するのではなく、別のアプリケーションにパイプしたいのですが、自分で制御するのはNodeJSスクリプトなので、パイプで画像を分離する方法はあまり重要ではありません。 以下は機能しません。 ... | ffmpeg -i - -f image2 pipe: | ... エラー [image2 @ 0xe1cfc0] Could not get frame filename number 2 from pattern 'pipe:' (either set updatefirst or use a pattern like %03d within the filename pattern) av_interleaved_write_frame(): Invalid …
8 linux  video  ffmpeg  pipe 


3
すべてのファイルが圧縮されていない理由とソリューションの改善方法
約20Kファイルのフォルダがあります。ファイルは、パターンに従って命名されているxy_{\d1,5}_{\d4}\.abc、例えばxy_12345_1234.abc。次のコマンドを使用して、最初の10Kを圧縮したいと思います。 ls | sort -n -k1.4,1.9 | head -n10000 | xargs tar -czf xy_0_10000.tar.gz ただし、結果のファイルには約2Kのファイルしかありませんでした。 ls | sort -n -k1.4,1.9 | head -n10000 | wc -l ただし、期待どおりに10000を返します。 ここで基本的なことを誤解しているようです... Linux Mint 17.1、GNU tar 1.27.1でzsh 5.0.2を使用しています 編集: @Archemarによって提案されたフォークは非常にもっともらしいように聞こえ、最新のフォークが結果のファイルを上書きします-ファイルにはファイルの「テール」が含まれています-7773から9999。 の結果xargs --show-limit: Your environment variables take up 3973 bytes POSIX upper limit on argument …
8 linux  shell  zsh  tar  pipe 

3
PIPESTATUS、tee、および/ bin / shをどのように一緒に使用しますか?
走ったとき curl | tee test.txt; echo ${PIPESTATUS[0]} 私は正しく見ます curl:詳細については、 'curl --help'または 'curl --manual'を試してください。 2 しかし、 '/ bin / sh'を使ってまったく同じコマンドを実行しようとすると、 sh -c "curl | tee test.txt; echo \${PIPESTATUS[0]}" 私は curl:詳細については、 'curl --help'または 'curl --manual'を試してください。 sh:1:不適切な置換 どうやってBad substitution問題を解決できますか。
6 linux  bash  pipe  exit-code 

2
grepでファイルを並べ替える
数百の出力ファイルがあり、そのうちのいくつかにはエラーメッセージが含まれています。文字列「ERROR_1」を含むすべてのファイルを「subfolder_1」に、残りを2番目の「subfolder_2」に自動的に配置するとします。これは、どういうわけかgrepをパイピングすることで可能になるはずです。便利な構文は何でしょうか?
4 bash  grep  sorting  pipe 

1
順序を変更せずに標準エラー出力を複製してbashで標準エラー出力とマージする
標準エラー出力と標準出力の両方をログファイルに書き出し、標準エラー出力を端末(またはデフォルトの出力デバイス)に出力します。 動機: 私は自分のcrontabにコマンドがあります、そして、私はその出力の全てをファイルに記録したいです、そして、エラー出力に書かれた何かがあれば私に電子メールを送りたいです。 私はこれらでいくらか成功しました: (echo out1; echo err1 1>&2; echo out2; echo err2 1>&2) \ 2> >(tee -a log) \ 1>>log または (echo err1 1>&2; echo out2; echo err2 1>&2) \ 3>&1 \ 1> >(tee -a log 1>/dev/null) \ 2> >(tee -a log 1>&3) またはexecで: exec 3>&1 exec 1> >(tee …

1
VIからパイプに保存するにはどうすればよいですか?
入力をstdinからVIにリダイレクトする多くの方法を見てきましたが、ファイルではなくパイプに保存するようにVIをリダイレクトしたいと思います。たとえば、VIのパイプバッファ全体を、kateなどの別のテキスト編集プログラムにパイプしたいと思います。これは可能ですか?
2 pipe  vi  buffer 

1
複数のコマンドでパイプを個別に解析する方法は?
各ステップで切り捨てることなく、複数のコマンドで単一のコマンドの出力を解析するにはどうすればよいですか? たとえば、 ls -al|grep -i something「何か」を含むすべての行を次のパイプに渡しますが、条件に一致しないため、パイプ内の他のすべての行が破棄されます。私が欲しいのは、多くのコマンドで独立して単一のパイプで操作できるようにすることです。 この場合、メッセージ本文全体を渡すMuttからのパイプです。これらのそれぞれを多分bash変数にgrep、sed、delete、および割り当てたいです。 最初に必要なのは、変数に「メッセージID」を割り当て、別の変数に「サブジェクト」を割り当てることができるようにすることです。その後、それらを適切なコマンド引数に渡します。 これがどうなるか MessageBodyFromMutt|grep something -Ax -Bx |grep another thing from the original message| sed some stuff from the original message| cut from here to there 明らかに、上記の行は私が望むことをしません。 これらすべてのコマンドが元のメッセージ本文で動作するようにします。理にかなっているといいのですが

1
コマンドラインでシェルリダイレクトを構築する方法
Unixで次のコマンドを検討してください。 echo 0123456789 | cat >/tmp/foo &> /tmp/bar エコーは/ tmp / barに送信されます。 ただし、本当に欲しいのは、catコマンドのstdoutおよびstderr出力をリダイレクトし、入力を受け取らないことです。 これを行うための適切な構文は何ですか?

1
標準エラーをファイルにパイプし、標準エラーのままにしますか?
出力と標準エラーを記録するスクリプト(フラグメント)があります。 #!/bin/sh #... { date "+%Y-%m-%d %T" cd $workdir ls -ltr validfile badfile #example command that provides stdout, stderr } | tee -a $logfile 上記を行うと、ログファイルに標準出力が表示されます。そこで標準エラーを取得するには、これを行うことができます: #!/bin/sh #... { date "+%Y-%m-%d %T" cd $workdir ls -ltr validfile badfile } 2>&1 | tee -a $logfile ただし、コマンドラインから呼び出されたスクリプトのこのバージョンでは、エラーを解析できません。 $ ./script.sh 2>/dev/null すべての標準出力と標準エラーを単に表示します。今回、エラーをただ破棄したい場合はどうすればよいですか? 標準エラーをログにパイプする方法を教えてもらえますが、コマンドラインまたは別のスクリプトを介して呼び出された場合に備えて、標準エラーのままにしますか? AIX …
2 shell  redirection  pipe  sh  ksh 


3
grepの出力をscpに送るにはどうすればいいですか?
各行がファイル名であるファイルがあります。ファイルの内容 file1 file2 file3 ... それから私は走ります grep ファイル名のリストのサブセットを取得するコマンド。 どのように私はの出力を供給するのですか grep コマンドイン scp?私は遊んだことがある xargs そして $() あまり成功せずに…
1 unix  grep  scp  pipe  xargs 

0
ffmpegによるバッチファイル内のaucdtectへのパイピング
このようにffmpegの出力をauCDtectにパイプ処理します ffmpeg -i %1 -acodec pcm_s16le -f wav - ^| auCDtect.exe -- 何らかの理由でaucdtectがただでフリーズする Data analysis: [0%] 私のffmpegのバージョンは3.0.1であり、私はそれが入力ファイルを正しくデコードできると確信しています。

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