I load a script in .bash_profile
and this script will ask for right password whenever a user opens a terminal window. If the user enters a wrong code, the script will run exit
to stop the current terminal.
if [ $code = "980425" ]; then
echo hello
else
exit
fi
But I realize that the user can always use ctrl-c to stop the script and enter the terminal. How to avoid that?
You can always trap SIGINT
:
trap 'echo got SIGINT' SIGINT
Once you're done, reinstall the default handler again with
trap SIGINT
See the POSIX spec for trap for details. This works in all Bourne shells, not just bash.
You can use:
trap '' 2
commands
trap 2
This disables signal 2 (control c) and then re-enables it after the command has run.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With