Sample Header Ad - 728x90

Bash ignoring SIGINT trap when 'select' loop is running

3 votes
2 answers
2342 views
When i use 'trap' combined with select loop, namely when i try to hit CTRL+C to break out while options are displayed, it will just print ^C in terminal. If i remove 'trap' from script it will normally exit out, that is it will accept CTRL+C. I've tested this on two different versions of bash (One shipped with CentOS and one shipped with Fedora), and i have an issue with the one from Fedora (4.4.23(1)-release). Bash version 4.2.46(2)-release that is shipped with CentOS seems to work fine. I've also tested this on local terminal and remote (via ssh). And problem is always on Fedora side. I will post code to see what I'm talking about This one doesn't work: #!/bin/bash trap exit SIGINT select opt in One Two Three; do break done If i were to remove the entire 'trap exit SIGINT' line, it will work fine and accept CTRL+C without issues. Any ideas how to fix or bypass this ?
Asked by Marko Todoric (437 rep)
Apr 19, 2019, 08:41 PM
Last activity: Apr 10, 2020, 06:43 PM