Windowsからz/OSへレコード長指定でFTP転送する
普通にFTPすると、可変長形式(VB)のレコード長256bytesでアップロードされてしまい、テストデータとして使えないというオチがあったので、色々調べてみました。
とりあえず、windowsのftpコマンドのヘルプを見てて、「なんか使えるコマンドねーかなー」と思って発見したのが、remotehelpコマンドだったってわけです。
下のは試しに、ftp.freebsd.orgへログインして、remotehelpコマンドをたたいてみたところ。
ftp> remotehelp 214-The following commands are recognized (* => unimplemented, + => extension). ABOR CLNT+ HELP MLSD PASS REST SIZE SYST ACCT* CWD HOST* MLST PASV RETR SMNT* TYPE ALLO* DELE LANG MODE PORT RMD STAT USER APPE EPRT* LIST NLST PWD RNFR STOR AUTH* EPSV* MDTM NOOP QUIT RNTO STOU CDUP FEAT MKD OPTS REIN SITE STRU* This site is running NcFTPd Server software. For more information about this FTP server software, visit: http://www.NcFTP.com/ncftpd/ 214 ftp>
literal site chmod 755 file
とかやって、サーバのコマンドを発行するのを思い出し、siteコマンドのremotehelpを見てみたところ、
レコード長を100bytesに変えるときは、
literal site lrecl=100
データセット形式を固定長に変えるときは、
literal site recfm=FB(固定長)
とすればよいことが分かりました。
あわせると、
bin literal site lrecl=100 literal site recfm=FB put local.file remote.file
みたいな感じ。
FTPが使えてくれるだけでも、PCとの連携がかなり出来るので、ほんと助かります。
これ、汎用機の中の世界だけでテストデータ作ってくれとか言われたとしたら、もう発狂しそうな勢いです。(とはいっても、そのときはそのときでなんとかしてしまうのだろうけど。。)