始める無料で始める

ファイル名を指定しないとどうなりますか?

シェルスクリプト(や対話的なコマンド)でよくある間違いは、ファイル名を間違った場所に置いてしまうことです。 次のように入力したとします。

tail -n 3

この場合、tail にはファイル名が渡されていないため、キーボードからの入力を待ち続けます。 つまり、次のように入力すると:

head -n 5 | tail -n 3 somefile.txt

tailsomefile.txt の最後の3行をそのまま出力しますが、head はファイル名を指定されておらず、パイプラインの前段にも何もないため、キーボード入力を永遠に待ち続けます。

これは、コマンド引数を間違った場所に置いてしまうときによくある問題です。


では、誤って次のように入力してしまったとします。

head -n 5 | tail -n 3 somefile.txt

このとき、次に何をすればよいでしょうか。

この演習はコースの一部です

Shell 入門

コースを見る

実践的なインタラクティブ演習

理論を実践に変える、インタラクティブな演習のひとつをお試しください

演習を開始する