cd `mkdir foo` とか tar -xzvf foo.tar.gz -C `mkdir foo` とかしたいわけですよ。 zshならpush-lineがあるので、しまったまだディレクトリを作ってないやと思っても大丈夫なわけだが、他のシェルとかだとどうすればいいか分からないので上記の様な解決方法を思いついてみた。 function mkdir { ALL_ARG="$@" OPT_COUNT=$OPTIND while getopts vpm: OPT v);; p);; m) (( ARG_COUNT++ )) ;; esac shift $ARG_COUNT /bin/mkdir $ALL_ARG && echo "$@" } オプションを除いて(完全じゃないけど)パスのみを標準出力に出してあげるラッパー関数を書いた。 引数解析は全く持ってうまくないので過信は禁物だが、これでb