-
パイプされたbashコマンドのコンテキストでロール名が見つかりません。
- キャラクター名は何ですか
-
? - スクリプトでより読みやすいものに変更できますか?
コマンド例:
echo -ne "my command" | socat - /dev/somefile
答え1
ここではこれは関数では-
ありません。によると:bash
socat
man socat
ADDRESS SPECIFICATIONS
...
For some keywords there ex‐ist synonyms (’-’ for STDIO, TCP for TCP4).
...
EXAMPLES
socat - TCP4:www.domain.org:80
transfers data between STDIO (-) and a TCP4 connection to port 80 of host www.do‐
main.org. This example results in an interactive connection similar to telnet or net‐
cat. The stdin terminal parameters are not changed, so you may close the relay with
^D or abort it with ^C.
これは-
STDIOを意味します。
私はsocat
以前にそれを使ったことがありませんが、キーボードで話すことで何かを入力し、入力した内容がに送信されsocat - TCP4:www.domain.org:80
、そのアドレスから受信した内容が端末に印刷されることを推測できます。www.domain.org:80
www.domain.org:80
-
主にstdinを表す他のプログラムでも見ることができます。
答え2
この-
文字は、「ダッシュ」、「ハイフン」、「マイナス記号」などの意味でよく使用されます。私は多くの人がそれを「tac」または「tack」と呼ぶことを聞きました。
ファイル名の代わりに引数として使用することは、通常、標準入力または標準出力を使用することを意味します。たとえば、cat - > myfile
標準入力(パイプで入力したり、端末に入力)に送信したりするすべての内容は、新しく作成されたというファイルに保存されますmyfile
。
しかし、これは一般的ではありません。このman
ページをチェックして、使用しているツールがこの慣用語をサポートしていることを確認してください。