UNIXファイルから最初の行と最後の行を除くすべての行を削除する方法は? [閉鎖]

UNIXファイルから最初の行と最後の行を除くすべての行を削除する方法は? [閉鎖]

UNIXファイルのヘッダーとトレーラーレコードのみを保持したいと思います。

答え1

sedを使用してください:

sed -n '1p;$p' file

パターンスペース(-n)の自動印刷を無効にしますが、パターンスペースの最初の行(1p)と最後の行()を印刷します。$p

ファイルを「所定の位置に」編集するには、sedのoptionsを使用します-i

答え2

使用headと:tail

head -n 1 file.txt; tail -n 1 file.txt

tail正常に実行された場合head:

head -n 1 file.txt && tail -n 1 file.txt

例:

% cat file.txt 
foo
spam
egg
bar


% head -n 1 file.txt; tail -n 1 file.txt
foo
bar

% head -n 1 file.txt && tail -n 1 file.txt
foo
bar

関連情報