-1

Linux で複数のファイルを追加または結合するには、次のコマンドを使用できることを知っていますcat file1 >> file2。しかし、結合後に分離file1するコマンドが見つかりませんでした。file2つまり、オリジナルfile1file2バックも両方欲しい。コマンドを使用しようとしましたsplitが、ファイルを同じサイズの複数のファイルに分割するだけです。

それを行う方法はありますか?

4

3 に答える 3

1

file1またはfile2が何であったかに関する情報が保持されないため、このようなコマンドはありません。新しい結合ファイルは単なるデータストリームです。

それらを「分割」してバックアップするには、その方法に関するルール(file1とfile2のバイト数など)が必要です。

于 2012-09-20T04:24:12.350 に答える
1

連結を実行すると、システムは結果のファイルがどのように作成されたかを追跡しません。したがって、元の分割がそのファイルのどこにあったかを思い出す方法はありません。あなたがやろうとしていることを説明できますか?

于 2012-09-20T04:25:49.437 に答える
0

file1 がある限り、問題ありません。

$ echo foobar >file1
$ echo blah >file2
$ cat file1 >> file2
$ truncate -s $(( $(stat -c '%s' file2) - $(stat -c '%s' file1) )) file2
$ cat file2
blah

また、代わりにstat -c '%s' filenameを使用できますwc -c filename | cut -f 1 -d ' '。これは、より長くなりますが、移植性が高くなります。

于 2014-10-02T01:05:58.540 に答える