1. ホーム
  2. linux

[解決済み] 巨大なファイルの最初の数行をコピーし、最後にテキストを追加する方法 Linux コマンドを使用して?

2022-11-08 05:58:21

質問

Linux のコマンドを使って、巨大なファイルの最初の数行をコピーし、最後にテキスト行を追加するにはどうしたらよいでしょうか。

どのように解決するのですか?

この head コマンドは最初の n の行を取得します。バリエーションは

head -7 file
head -n 7 file
head -7l file

というファイルの最初の7行を取得します。 "file" . 使用するコマンドは、使用している head . Linuxでは、最初のものが動作します。

同じファイルの末尾に行を追加する場合は

echo 'first line to add' >>file
echo 'second line to add' >>file
echo 'third line to add' >>file

または

echo 'first line to add
second line to add
third line to add' >>file

を使えば一発でできる。

つまり、この二つのアイデアを結びつけると、最初の10行の input.txt ファイルの最初の 10 行を output.txt の5行を追加し、さらに "=" という文字があれば、次のようになります。

( head -10 input.txt ; echo '=====' ) > output.txt

このケースでは、出力ストリームを1つに統合するために、サブシェルで両方の操作を行い、それを使って出力ファイルを作成または上書きしています。