リモートファイルシステムからローカルスクラッチディレクトリにディレクトリをコピーして解凍し、それらを解凍してユーザーがファイルを編集できるようにするための単純な ruby サンドボックスコマンドラインユーティリティを作成しています。Dir.mktmpdir をデフォルトのスクラッチ ディレクトリとして使用していますが、これは非常に見苦しいパスになります (例: /var/folders/zz/zzzivhrRnAmviuee+++1vE+++yo/-Tmp-/d20100311-70034-abz5zj)。
copy-and-unzip スクリプトの最後のアクションで、呼び出し側シェルを新しいスクラッチ ディレクトリに cd して、人々が簡単にアクセスできるようにしたいのですが、呼び出し側シェルの PWD を変更する方法がわかりません。1つの可能性は、ユーティリティにstdoutへの新しいパスを出力させてから、スクリプトをサブシェルの一部として実行させることです(つまりcd $(sandbox my_dir)
、)が、最大10分かかる可能性があるため、コピーと解凍の進行状況を出力したいと思います、したがって、これは機能しません。あらかじめ決められた、見つけやすいスクラッチ ディレクトリに移動する必要がありますか? 誰かがより良い提案をしていますか? よろしくお願いします。-エリック