stdio

スレッドプロセスでSTDIOを/ dev / nullに転送する方法は?
stdio

スレッドプロセスでSTDIOを/ dev / nullに転送する方法は?

走ろうとしています。プラリウムワインと一緒に遊ぶところで、奇妙な問題が発生しました。一般的なデスクトップエントリで実行しようとすると、次のJavaScriptエラーが発生します。 端末で実行すると、これは発生しません。 / dev / nullのパイプを使用しても、初めてログインした後にターミナルでPlarium Playを最初に実行せずにデスクトップエントリでPlarium Playを実行しようとすると、2つのJavaScriptエラーが発生します。 どちらの場合も、取り除いた後は水ぶきが永遠に止まります。 最初のコマンドラインでPlarium Pl...

Admin

ioctlなしでKVMを使用できますか?
stdio

ioctlなしでKVMを使用できますか?

最近私は、または/dev/kvm実装された機能がないようで、それを呼び出そうとすると常にエラー22(無効な引数)が発生することがわかりました。read()write() 私はioctl呼び出しを使用しないようにしていますが、カーネルからioctlサポートを完全に削除するにはkvmを使用できるかどうか疑問に思います。 ioctlなしでkvmへのアクセスを呼び出す方法は? ...

Admin

"stdbuf"プレフィックスが必要なコマンドは何ですか?
stdio

"stdbuf"プレフィックスが必要なコマンドは何ですか?

長い間実行されるBashコマンドパイプラインがある場合、I / Oバッファリングによって生命の兆候がまったく見えないことがよくあります。バッファリングを無効にすることが可能であることをオンラインで見つけましたstdbuf。表示例ここ例: tail -f access.log | stdbuf -oL cut -d aq aq -f1 | uniq ただし、パイプラインでどのコマンドにコマンドプレフィックスを付けるべきかはわかりませんstdbuf。だから、すべてのコマンドに追加します。バッファリングなしで次のことができます。 cd ~/tmp stdbuf ...

Admin

CでのLinux関連のgetline()関数の予期しない動作
stdio

CでのLinux関連のgetline()関数の予期しない動作

#include <stdio.h> #include <stdlib.h> #define MAXLEN 1024 void reverse(FILE *, FILE *); int main(int argc, char ** argv) { ... reverse(fptr, stdout); ... return 0; } void reverse(FILE * instream, FILE * outstream) { char ** buf; char * lbuf; int count...

Admin

外部オペレーティングシステム(edk2 SMMドライバ)からkallsymにアクセスするには?
stdio

外部オペレーティングシステム(edk2 SMMドライバ)からkallsymにアクセスするには?

私はそれを使ってEDK2システム管理モード(SMM)ドライバを作成しています。 .stdio#include <stdio.h>undefined reference to "fopen"fopen("/proc/kallsyms", "rb") 私が理解したのはこのSMMドライバ(しかし私はコードを次のように書いています)。PiSmmCore.c)はオペレーティングシステム上で実行されず、他の層で実行されます(間違っている場合は訂正してください)。したがって、この場合、etcが利用できない場合などfopenのfreadファイルにどのようにアクセ...

Admin

*nixシェル:コマンドのすべてのパイプに対してパイプバッファリングを無効にする方法は?
stdio

*nixシェル:コマンドのすべてのパイプに対してパイプバッファリングを無効にする方法は?

私の考えではすべてstdbuf -oLパイプはバッファリングされていないため、すべてのパイプコマンドを入力する必要はありません。複数のパイプを持つコマンドを作成するときに、環境変数またはそれをグローバルにアクティブにするものがある場合、または少なくともコマンドの残りのパイプについては良いでしょう。 はい、わかりましたunbuffer。stdbufしかし、パイプごとに呼び出す必要があります。 それは次のとおりです。 今後: stdbuf -oL command_1 | stdbuf -oL command_2 | stdbuf -oL command_3 後...

Admin

予期しない予想/sshの問題
stdio

予期しない予想/sshの問題

SSHパスワードベースのログイン(およびログイン後の一連の操作)を自動化しようとしています。 SSHパスワードプロンプトがSTDINをバイパスすることを知っています。これを行うために、迅速な予想スクリプトを作成しました。 spawn ssh -o StrictHostKeyChecking=No $USERNAME@$HOST expect { timeout { send_user "\nFailed to get password prompt\n"; exit 1 } eof { send_user "\nSSH failure for $H...

Admin

デバッグおよびパイプライン出力(ロギング、メトリックなど)のための追加のファイル記述子
stdio

デバッグおよびパイプライン出力(ロギング、メトリックなど)のための追加のファイル記述子

Bashスクリプトプロジェクトの場合は、人間が読めるログメッセージをstdout / stderrに書き込みます。また、デフォルトでは削除されますが、パイプライン処理のためにリダイレクトできる3番目のストリームにフォーマットされた指標を書きたいと思います。これには追加のファイル記述子を使用することをお勧めしますか? exec 3> /dev/null echo "This is stdout" echo "This is stderr" >&2 echo "This is fd3" >&3 通常の状況では、3行目が表示され...

Admin

fwrite/fread(3) は、歴史的にさまざまなプラットフォームでさまざまな「マルチアイテム」動作を提供しましたか?
stdio

fwrite/fread(3) は、歴史的にさまざまなプラットフォームでさまざまな「マルチアイテム」動作を提供しましたか?

さまざまな項目数に追加の引数がありますfread(3)。fwrite(3)したがって、通常の書き込みにはcharで始まるバッファしかないため、通常ハードコードされた数があります(例:)fwrite(data, len, 1, stdout)。 このパラメータの意味は何ですか?これはいつも便利な「システムが乗算するように」することでしたかcalloc(3)?それとも、一部の過去のオペレーティングシステムおよび/またはストレージデバイスで作成された個々の項目を特別に処理する機能がありましたか? 一部のIBM z / OS文書が偶然発見されたときに好奇心が刺激され...

Admin

ファイルにstdoutとstderrを追加する
stdio

ファイルにstdoutとstderrを追加する

私はこれを持っています: nohup_ntrs(){ nohup_file="$HOME/teros/nohup/stdio.log" mkdir -p "$(dirname "$nohup_file")"; echo " ------------- BEGIN $(date) -------------- " >> "$nohup_file" nohup "$@" &>> "$nohup_file" echo " ------------- END $(date) -------------- " &g...

Admin

コンソールのように動作するプログラムの作成と実行
stdio

コンソールのように動作するプログラムの作成と実行

私は、シリアルインターフェースを介して接続されているように、無線送信機 - 受信機(NRF24L01)を使用して2つのデバイスを接続するように設計された一連のプログラムを作成しました。 現時点では、デバイスAからBにbashコマンドを一方向に送信できます。私のAデバイスは現在AVRマイクロコントローラです。 私のBデバイスはRapberry Piです。次のコマンドを使用して、受信したテキストをbashにパイプします。これによりコマンドを送信できますが、出力をAデバイスに送り返すことはできません。 ./program | bash 私はプログラムが受...

Admin

端末のバックスペースキーの動作
stdio

端末のバックスペースキーの動作

バックスペース()文字の動作に関する内容です\b。次のCプログラムがあります。 int main() { printf("Hello\b\b"); sleep(5); printf("h\n"); return 0; } 私の端末の出力は次のとおりです。 Helho カーソルが次の行の最初の位置に移動します。 まず、内容全体は5秒の休止後にのみ印刷されるため、カーネルからターミナルへの出力がラインバッファリングされていると推定されます。今私の質問は次のとおりです。 2つのスペースの後ろに移動して(2番目の)位...

Admin