私は参加したい2つのcsv/textファイルを持っています。両方とも同じ第1行を含む。私は、sedとcatを使ってマージされたファイルを生成する方法を理解しようとしていますが、最初の行は1つしかコピーされていません。そして私は文法を持っている時間があります。どんな助けも大いに評価されるでしょう:-D! おかげで、 アンドリューFile1 +(File2 - 1行目)> File3
答えて
これは、data2.txt
からの最初の行をスキップし、ファイルmerged.txt
内のファイルdata1.txt
とdata2.txt
を結合します。あなたはそれでOKであればそれはawkを使用しています:
(cat data1.txt; awk 'NR>1' data2.txt) > merged.txt
awkはファイルdata2.txt
から行番号> 1を持つすべての行がmerged.txt
をファイルに追加します。
NR
は、処理中のファイルの現在の行番号を表す組み込みのawk変数です。ブール式NR > 1
が真の場合、awkはその行を暗黙的に出力します。あなたはdata1.txt
そのまま維持を気にしなかった場合は
、あなたは自分の第二のファイル(マイナスの最初の行)を追加し、減らすことができるだけでこれに:
awk 'NR>1' data2.txt >> data1.txt
awkを持つ別のオプション:
awk 'NR==FNR || FNR>1' file1.txt file2.txt .. fileN.txt
これは、最初のファイルのすべての行、または後続のファイルの最初の行の後の行を表示します。 1行 「1つのD」で解決
これを行うとどうなるでしょう: 'awk 'NR == FNR || FNR> 1 '* .txt' –
ファイルグロブに一致したファイルの順序に依存します。それらがすべて同じ最初の行を含んでいれば、これは安全であるはずです。なぜそれを試してみて、何が起こるか見てみませんか? – ghoti
はFILE2
で次のコマンドを最初の行を削除することを意味し、私が最も簡単な解決策があると言うだろう
sed '1 d' file2 >> file1
ををfile1した結果を追加します:
(cat file1.txt ; tail -n +2 file2.txt) > file3.txt
それはあなたがやっているだけで何明確に述べるの利点があります:すべてが、SEの最初の行を印刷し、その後、全体の最初のファイルを印刷condファイルを使用して、3番目のファイルに出力を書き込みます。
うわー!!!みんな、ありがとう!!!!!!! :-D –
- 1. file2.pdfからfile1.pdfにページを追加する方法
- 2. パイソン:</p> <pre><code>$ myScript --aParameter file1 file2 file3 ... fileN </code></pre> <p>はどのようにそれを行うことができます:を使用して、可変サイズPythonで
- 3. file2に存在するfile1の行を削除してください。
- 4. UNIX findを使用してfind(file1 OR file2)を検索する方法?
- 5. 古いコードはfile1.pyで
- 6. 2つのファイルキーを比較し、file1の対応するキーでfile2の値を更新します。
- 7. 「tar -cvf/dev/nst0/home/user1 >> file1.log」とは何ですか?
- 8. os.path.abspath(「FILE1.TXT」)は
- 9. HTTP 1つの<input>
- 10. 動作しませんでした何FILE2
- 11. JSONDecodeError:期待値:1行目1
- 12. のawk/sedの/ grepの私はいくつかの行(十)がFILE1、およびはるかに長いFILE2(〜50万ライン)を持っている別のファイル
- 13. ''、16進値0x1Fは無効な文字です。 1行目、1行目
- 14. VIM - 複数のファイルの行を1つのファイルにまとめる
- 15. 1つのプログラムでXORでファイルをエンコードしてデコードする
- 16. apache-camel file2 antInclude ignore-case
- 17. 1つのコマンドを実行し、複数のRubyファイルを実行する
- 18. PHPエラー行1: `<?php ?> '
- 19. コピー私はハードリンクに</p> <p>例解決せずにフォルダ全体をコピーしたいWindowsでハードリンクを解決せずに、プログラムフォルダ(のWin32 API)
- 20. Bash配管:1行目以降の入力を分割し、1行目と別のコマンドを実行する
- 21. 2つのテキストファイルをどのように比較できますか?私は2つの.TXT(Ejと:FILE1.TXT、FILE2.TXT)に保存
- 22. 1回目の実行後にQTCreator segfault
- 23. niceditの1行目の問題?
- 24. エラー1行目:不明なコマンド '\'
- 25. 2行目のdiv、2番目の行は1番目の行に収まらない
- 26. PowerShellの:私は<strong>outputDirの</strong>に滞在いくつかのファイルのを除いて<strong>ビン</strong>フォルダ(<strong>outputDirの/ビン</strong>)にすべてのビルド出力ファイルとフォルダをコピーしようとしています再帰的に
- 27. 1行目の2行目のエラー:ドキュメント末尾の余分な内容
- 28. ルートレベルのデータが無効です。 1行目の位置1
- 29. (-1 >> 1)== -1なぜですか?
- 30. コミット時にsvnを実行するとファイルが追加される
また、 'awk 'の代わりに' tail -n + 2'を使用することもできます。 –
@ TannerL.Swettきちんと頭を使うか頭を使っているかを考えていましたが、私はawkでこれをどうやって行うのか確信していました。もちろん、OPが 'data1.txt'を保存することに気をつかない場合は、最初のコマンドをスキップして2番目のファイル(最初の行)をそのファイルに追加することができます。 – Levon