in reply to getting a list of your bash aliases

Backticks worked for me (tho I actually used qx{}). Some filtering (with grep) was needed because my .bashrc outputs some other messages, and -i to force an interactive shell. You can't use sh as that doesn't read .bashrc.
print grep /^alias/, qx{/bin/bash -ic alias}; __END__ alias e='emacs' alias grep='grep --colour=auto' #etc

but that's only going to list the aliases defined by sourcing .bashrc, not the aliases in effect when the script was called. You can decide whether that's important or not.


Unless I state otherwise, my code all runs with strict and warnings