ファイル名を指定しないとどうなりますか?
シェルスクリプト(や対話的なコマンド)でよくある間違いは、ファイル名を間違った場所に置いてしまうことです。 次のように入力したとします。
tail -n 3
この場合、tail にはファイル名が渡されていないため、キーボードからの入力を待ち続けます。
つまり、次のように入力すると:
head -n 5 | tail -n 3 somefile.txt
tail は somefile.txt の最後の3行をそのまま出力しますが、head はファイル名を指定されておらず、パイプラインの前段にも何もないため、キーボード入力を永遠に待ち続けます。
これは、コマンド引数を間違った場所に置いてしまうときによくある問題です。
では、誤って次のように入力してしまったとします。
head -n 5 | tail -n 3 somefile.txt
このとき、次に何をすればよいでしょうか。
この演習はコースの一部です
