2017-06-08 9 views
-2

すべてのテキストファイルから行をコピーし、すべての行を含む1つのファイルを作成するコマンドを提案してください。テキストから行をコピーして新しいテキストファイルを作成するコマンド

私は、特定のディレクトリに約11000個のファイルがあり、各ファイルに3行または4行のデータがあるLinuxマシンを使用しています。

私がやりたかったのは、すべてのデータを1つのファイルにまとめることでした。私が参照できるのは... 11000 * 3 = 3000行としましょう。私はすべての3000行を1つのファイルに1行ずつコピーしたい。

これらは、いくつかのtxtファイルとディレクトリとさえディレクトリですTXTファイル

Jan 2007 abc.txt 
Jan 2007 siele.txt 
Jan 2007 regel.txt 
Jan 2007 sne.txt 
Jan 2007 marshwlo.txt 
Jan 2007 ziplist.txt 
Jan 2007 listider.txt 
Jan 2007 kindle.txt 
Jan 2007 list.txt 
Jan 2007 Codelevel 
Jan 2007 Ziplevel 
+0

あなたが望むものをよりよく記述できますか?いくつかの入力と出力を与えてください。試行された解決策を示すのにも役立ちます。 [mcve]を参照してください。 –

+0

@JohnKugelman申し訳ありませんが、私の質問が説明的ではない場合。私は今それを更新しました。助けてくれたら教えてください。 – sady

+0

@JohnKugelman私は自分の目的に合ったものを見つけました。混乱させて申し訳ありません。私は 'awk '{print>" newfile.txt "}' * .txt' – sady

答えて

2
find . -name \*.txt -type f | xargs -r cat > /tmp/output_file.txt 

を説明:任意の*.txtファイル

  • xargs -r cat runコマンドについて.ディレクトリから

    • find . -name \*.txt -type f検索再帰cat foundFile1.txt foundFile2.txt ...
    • > /tmp/output_file.txt/tmp/output_file.txt
    • を出力をファイルにリダイレクト
  • +0

    ありがとうございました...それは働いた!! – sady

    2

    これのリストを持っていますか?

    cat *.txt > newfile.txt 
    
    +0

    も使用しました。もう1つの質問。 11000のテキストファイルと一緒に、私はまた、さらにいくつかのテキストファイルを持っている56のサブディレクトリを持っています。これらのサブディレクトリの下でテキストファイルをループするにはどうすればよいですか? – sady

    +0

    そして、 'find'答えを見たり、bash> = 4.0で' globstar'グロブリングを利用します(深さが2の場合のみ)。 –

    関連する問題