貼り付けツールを使用すると、奇妙な動作が発生します。何らかの理由で2つの特定のファイルでは動作しないようですが、他のファイルでは動作を再現できません。
最初のファイル:
$ cat file1
20.623 40.276 -1.999 -1031 127 141 154
20.362 40.375 -2.239 -941 130 141 159
20.36 40.376 -2.402 -1083 139 151 165
20.374 40.367 -2.405 -1122 131 147 163
20.372 40.366 -2.405 -1165 132 145 161
20.375 40.364 -2.404 -1036 133 149 165
20.358 40.371 -2.405 -1137 139 151 165
20.359 40.374 -2.404 -1086 139 151 165
20.354 40.375 -2.404 -1106 139 148 163
20.356 40.374 -2.404 -1059 139 151 165
2番目のファイル:
$ cat file2
-1
-1
2
-1
-1
-1
-1
2
2
2
これで、貼り付けは次の呼び出し後に期待されるアクションを実行します。
$ paste file2 file1
-1 20.623 40.276 -1.999 -1031 127 141 154
-1 20.362 40.375 -2.239 -941 130 141 159
2 20.36 40.376 -2.402 -1083 139 151 165
-1 20.374 40.367 -2.405 -1122 131 147 163
-1 20.372 40.366 -2.405 -1165 132 145 161
-1 20.375 40.364 -2.404 -1036 133 149 165
-1 20.358 40.371 -2.405 -1137 139 151 165
2 20.359 40.374 -2.404 -1086 139 151 165
2 20.354 40.375 -2.404 -1106 139 148 163
2 20.356 40.374 -2.404 -1059 139 151 165
ただし、パラメータを切り替えると、行を連結するのではなく、何らかの方法でマージして結果行が生成されます。
$ paste file1 file2
20.623 4-1276 -1.999 -1031 127 141 154
20.362 4-1375 -2.239 -941 130 141 159
20.36 402376 -2.402 -1083 139 151 165
20.374 4-1367 -2.405 -1122 131 147 163
20.372 4-1366 -2.405 -1165 132 145 161
20.375 4-1364 -2.404 -1036 133 149 165
20.358 4-1371 -2.405 -1137 139 151 165
20.359 42.374 -2.404 -1086 139 151 165
20.354 42.375 -2.404 -1106 139 148 163
20.356 42.374 -2.404 -1059 139 151 165
2番目の数字は混乱しています。さらに奇妙なことは、ペーストが期待どおりに機能することです。
$ cat test1
5 5 5 5
6 6 6 6
$ cat test2
-2
-7
$ paste test2 test1
-2 5 5 5 5
-7 6 6 6 6
$ paste test1 test2
5 5 5 5 -2
6 6 6 6 -7
マニュアルページはトラブルシューティングには役立ちません。私が達成したい仕事の説明と助けがありますか?
ベストアンサー1
実際にこの動作を引き起こすのは Windows 改行文字です。走った後
sed $'s/\r//' -i file1
これを置き換えるには、貼り付けは期待どおりに機能します。正しい方向を教えてくれたSteeldriverに感謝します。別の解決策は、次のものを使用することです。
dos2unix file1