2018年1月25日木曜日

MELを使って別名保存を行う

膨大なフラグが存在するfileコマンド。
しかも幾つかのメインフラグと、それを補助する二次フラグに分かれていて、適切に組み合わせないと上手く動作しないクセにサンプルコードの種類が少ない厄介者です。

ふだん何気なく行っている操作で「シーンを別名で保存」というのがありますが、これをMELだけでやろうとすると意外とつまづくみたいです。

参考用にスクリプトエディタの履歴をみても、

file -f -save -options "v=0;";

としか表示されていません。
単純に考えて、

file -save -type "mayaAscii" "d:/hogehoge.ma";

みたいに最後に保存パスを指定してもエラーになります。
エラーを良く見ると、-save ではファイル名を指定できないから、先にリネームしろと言っています。
昔は回避方法とか記されていなかったような気がしましたが、良く起こす間違いなので追加されたのかな?

要は

file -rename "d:/hogehoge,ma";
file -save -type "mayaAscii";

と2つに分けて実行しろと云う事みたいです。

リネームの時、フルパスではなくファイルの名称だけで指定すると、カレントワークスペースへ保存されてしまう罠も仕掛けられているので要注意。