exit
コマンドプロンプトでコマンドを入力するたびに確認メッセージを受信しようとします。このためにファイルtrap
で使用しようとしましたが、とにかく元のコマンドを実行するので、トラップは解決策ではないようです。.bashrc
これを持つ方法はありませんか?
これは、操作を完了できないbashrcスクリプトコードです。
function _exit() # Function to run upon exit of shell.
{
read -p "${RED}Are you sure? " REPLY
if [[ $REPLY =~ ^[Yy]$ ]]; then
echo -e "${RED}Bye${NC}"
exit 0
else
#I do not know what to do here to not exit
return
fi
}
trap _exit EXIT
ベストアンサー1
シェルがzsh
or bash
(モードではありませんがsh
)の場合、exit
関数が生成されます。または(POSIXシェルにはありません)、関数はシェル組み込み機能(たとえば、などの特殊機能も含むexit
)よりも優先されます。そのため、関数の名前を変更して関数内で使用してください。もちろん、そうでなければ無限の再帰に陥るでしょう。zsh
bash
exit
command exit