I’d like to write a script that (under certain conditions) will execute gdb and automatically run some program X with some set of arguments Y. Once the program has finished executing the user should remain at gdb’s prompt until s/he explicitly exits it.
One way to do this would be to have the script output the run command plus arguments Y to some file F and then have the script invoke gdb like this:
gdb X < F
But is there a way to do this without introducing a temporary file?
If you want to run some commands through GDB and then have it exit or run to completion, just do
If you want to leave it at the command prompt after running those commands, you can do
This results in echoing the commands to GDB, and then you type into the
catprocess, which copies its stdin to stdout, which is piped into GDB.