2

各行に値を含むファイルがいくつかあります。

編集 :

投稿を書いている最中にこの質問への答えを見つけましたが、不完全な状態で誤って投稿したことに気づきませんでした。

私はやろうとしていた:

paste -d ',' file1 file2 file 3 file 4 > file5.csv

奇妙な出力を得ていました。一部のファイルには行末に改行文字と改行文字の両方があり、他のファイルには改行文字しかないため、後でそれが起こっていることに気付きました。そういうことに気を配るということを常に意識しなければなりませんでした。

4

5 に答える 5

2

ファイル 1:

1
2
3

ファイル2:

2
4
6
paste --delimiters=\; file1 file2

生成されます:

1;2
3;4
5;6
于 2008-08-24T17:54:52.437 に答える
1

まだ質問の入力が終わっていないように感じますが、まだ試してみます。;)

file1:  file2:  file3:
1       a       A
2       b       B
3       c       C

~$ paste file{1,2,3} |sed 's/^\|$/"/g; s/\t/","/g'
"1","a","A"
"2","b","B"
"3","c","C"

または、

~$ paste --delimiter , file{1,2,3}
1,a,A
2,b,B
3,c,C
于 2008-08-24T17:58:51.947 に答える
0

logparserまたはコマンドラインツールを使用した以前の回答は機能するはずです。フィルタリングや結合など、レコードに対してより複雑な操作を実行する場合は、ETLツールの使用を検討できます(Pentaho、Mapforce、Talendが思い浮かびます)。これらのツールは通常、データソースと行に対して実行する操作との関係を定義するためのグラフィカルパレットを提供します。

于 2008-08-25T00:49:16.560 に答える
0

また、Windows を使用している場合は、これまでにない用途の広い LogParserについても忘れないでください。

フラット テキスト ファイルに対して SQL のようなクエリを実行して、あらゆる種類のマージ操作を実行できます。

于 2008-08-24T19:30:56.827 に答える
0

おそらく質問を明確にするか、タグを付け直す必要がありますが、現状では答えは以下のとおりです。

Linux で 2 つのファイルを結合する

cat filetwo >> fileone
于 2008-08-24T17:52:05.470 に答える