Conversation
Notices
-
せのお (妹尾 賢) (senooken@social.senooken.jp)'s status on Sunday, 16-Jun-2019 02:16:21 JST
せのお (妹尾 賢)
面白い発見。シバンなしで,あらゆるインタープリターをファイル名で実行可能。
command -p tail -n +2 "$0" | command -p php "$@"; exit $?
<?php
echo getcwd(), "\n";-
せのお (妹尾 賢) (senooken@social.senooken.jp)'s status on Sunday, 16-Jun-2019 02:19:48 JST
せのお (妹尾 賢)
肝は1行目。tail -n +2でファイルの2行目以降をインタープリターに渡している。これにより,シバンに頼らない統一記法であらゆるインタプリターに対応できる。
しかも,command -pにより,仮にPATH環境変数が空であっても実行できる可能性がある。
もちろん,POSIXに比較的準拠なシェルでだけなんだけど。これをWindowsにも対応させる場合,もう一工夫必要。過去に考えたことがある方法を使う。 -
せのお (妹尾 賢) (senooken@social.senooken.jp)'s status on Sunday, 16-Jun-2019 02:54:27 JST
せのお (妹尾 賢)
いや,Windowsは面倒くさい。後回し。忘れない内に,明日ブログにまとめる。昨年の作業も,面倒になって結局後回しにしたものがたくさんある。記録を残さないと何もない。
-