少なくとも Linux では、そしておそらく Windows/DOS シェルでも、>
出力をファイルに「パイプ」するために使用できます。次のようになります:
cat myfile.txt > mightAsWellCP.txt
その構文糖の部分は何と呼ばれますか? これは「パイプ」です。では、 and (ついでに言えば、 and )は|
何と呼ばれますか?>
<
<<
>>
答え1
<
<<
>
>>
私は、理解できるとわかっている相手と話すときは、通常、4 つのバリエーション ( ) すべてを「リダイレクト」と呼びます。
答え2
>
に慣れている出力をリダイレクトする。
$ echo "hello" > file.txt
<
に慣れている入力をリダイレクトする。
$ cat < file.txt
出力:
hello
>>
に慣れている出力をファイルの末尾に追加する。
$ echo "world!" >> file.txt
出力:
hello
world!
<<
(「ヒアドキュメント」と呼ばれる)はファイルリテラルまたは入力ストリームリテラル。
$ cat << EOF >> file.txt
出力:
>
ここでは何でも入力でき、複数行にすることもできます。EOF を入力すると終了します。(例では EOF を使用しましたが、代わりに他のものを使用することもできます。)
> linux
> is
> EOF
出力:
hello
world!
linux
is
<<<
(「here文字列」と呼ばれる)はと同じです<<
が、1つの「単語」(つまり文字列)のみを取ります。。
$ cat <<< great! >> file.txt
出力:
hello
world!
linux
is
great!
$ cat <<< great! | tee file.txt
の代わりにを使用することもできます$ cat <<< great! >> file.txt
が、その場合は結果が異なりますので注意してください。
答え3
これらは入力/出力のリダイレクトを表すシンボルです。
リダイレクト構文コマンドの違いを簡単に説明します
答え4
コマンドラインで話すときは、通常、記号をその機能に従って発音します。
>
「出力先」>>
「追加」<
「入力元」|
"パイプ"
したがって、例を声に出して読むときは次のようになります。
cat myfile.txt > mightAsWellCP.txt
「cat myfile dot TXT output to might as well CP dot TX T」と発音します。