AIXからWindowsへのファイル転送 - CRおよびLFの問題(制御文字)

AIXからWindowsへのファイル転送 - CRおよびLFの問題(制御文字)

Unix(AIX)とWindowsの間でファイルを転送できません。 UnixにWindowsフォルダをマウントするには、次のマウントコマンドを使用しました。

mount -v cifs -n /admin/@dmin -o file_mode=775,dir_mode=775,uid=0,gid=0 /TEST/Finance

Windowsコンピュータでは、このインストールディレクトリで処理するためにこれらのファイルを選択します。 IBM Connect:Direct を使用してファイルを転送します。

問題は、UnixのWindowsマウントからWindowsサーバーにファイルを移動するときに、ファイルにCR(キャリッジリターン)がなく、LF(改行)しかないということです。つまり、メモ帳でファイルを開くと、すべてのテキストを1行で表示できます。

UnixからWindowsにファイルを転送するときにCRとLFを保存する方法は?

私のマウントコマンドに問題がありますか?

ベストアンサー1

私の考えでは、インストールとは関係がないかもしれません。 CR文字が元のファイルに存在していましたか? AIXについて実際に確認していないが存在しないと仮定すると、unix2dosそれを使用して追加できます。次のようにsedを使用できます。

sed -i -e 's/\n/\r\n/g' <file>

使用できるものがない場合unix2dos。この-iフラグは sed にファイルをその場で変更するよう指示します。通常、結果を標準出力として印刷します。-esedに何かをするように指示するフラグはいくらでも持つことができます。この例では、操作を使用してs値を置き換えます。/代替コマンドの区切り文字として使用されます。最初の部分\nは私たちが探しているパターンで、2番目の部分\r\nは私たちが変えたいパターンです。最後は、gsedに各行の最初の位置だけでなく、表示されているすべての場所で一致するように指示します(行の終わりを一致させるときは重要ではないかもしれません)。

おすすめ記事