パイプ付きのls -lを使用して、ファイルの詳細なしでリストの8番目のファイルを表示するにはどうすればいいですか?

パイプ付きのls -lを使用して、ファイルの詳細なしでリストの8番目のファイルを表示するにはどうすればいいですか?

ls -l とパイプを使用してディレクトリ内の 8 番目のファイル名を表示したいと考えています。たとえば、ls -l | wc -1 ではカウントは表示されますが、返されるのはディレクトリ リスト内の 8 番目のファイル名です。grep とワイルドカードを調べましたが、どのコマンドで必要な結果が得られるかがまだわかりません。

ありがとう

答え1

試す

ls -l | head -n 9 | tail -n 1

cut名前だけが必要な場合は最後に使用できます

ls -l | head -n 9 | tail -n 1 | tr -s ' ' | cut -d' ' -f8

tr複数のスペースとタブを1つのスペースに置き換えることです

答え2

もう一つの方法はこれです。

ls -l | sed -n '9p'

ファイル名またはディレクトリ名のみが必要な場合は、これを使用します。

ls -l | sed -n '9p' | awk '{print $9}'

jcubic 本当にこれがあなたが望んでいたものですか?

ls -l | head -n 9 | tail -n 1 | tr -s ' ' | cut -d' ' -f8

彼はこのようなファイル名またはディレクトリ名を望んでいると思います。

ls -l | head -n 9 | tail -n 1 | tr -s ' ' | cut -d' ' -f9

答え3

ls | awk 'NR==8'

答え4

使わないで-l

ls | 頭 -8 | 尾 -1

ファイル名を取得し、lsファイルを と同じように順序付けますls -l

関連情報