2016-10-19 7 views
-1
echo "Enter line number to display" 
read number 
sed -n $number /etc/passwd 

私はユーザーから与えられた1行のテキストを、簡単に表示する必要があります。上の行は私にエラーを与えています: sed -e式char3、コマンド後の余分な文字。CentOS - ファイルの1行だけを表示する

私は間違っていますか? おかげ

+2

[私の質問に誰かが答えたときにはどうすればよいですか?](http://stackoverflow.com/he) lp/someone-answers) – Cyrus

+3

[番号で示されたファイルの特定の行を表示]の可能な複製(http://stackoverflow.com/questions/5418908/view-a-particular-line-of-a-file-数字で表示)、[ファイルからn番目の行を取得するためのbashツール](http://stackoverflow.com/questions/6022384/bash-tool-to-get-nth-line-from-a-ファイル)。 –

答えて

1

正しいコマンドは次のとおりです。もちろんsed

sed -n ${number}p /etc/passwd 

(pは、印刷するためのコマンドです)

は、その後に有用何もしませんので、ベンジャミンのように印刷された後に終了することにも良いでしょう

sed -n ${number}'{p;q}' /etc/passwd 
+0

ありがとうございました – Rikardo

+0

ファイルの残りの部分がスキャンされるのを防ぐことによって、これは 'p'ではなく' {p; q} 'で高速化することができます。 –

+1

@BenjaminW。私はまさにそれを考えていた!私はあまりにも早く答えて、後で考えました。編集。 –

関連する問題