3

Create an executable file file1 as follows:

cat > file1 <<EOF
#!/bin/bash
mutt -e "push '<'"
EOF
chmod +x file1

Running ./file1 in an existing terminal executes mutt and select the first message (this is what the command < does). Running xterm -e ./file1 opens xterm, runs mutt and selects the first message. However, running urxvt -e ./file opens urxvt, runs mutt but selects the last message (the default in the absence of the "push '<'" directive).

Any ideas about why urxvt -e ./file1 behaves in this specific way?


Further clues:

With the following file, xterm -e ./file2 and urxvt -e ./file2 both result in the intended behavior.

cat > file2 <<EOF
#!/bin/bash
echo foo
sleep 1
mutt -e "push '<'"
EOF
chmod +x file2

The following file still results in the intended behavior with xterm, but I've seen urxvt -e ./file3 result in both behaviors nondeterministically.

cat > file3 <<EOF
#!/bin/bash
echo              
mutt -e "push '<'" 
EOF
chmod +x file3

Testing with gnome-terminal yields the same behavior as xterm, so it seems like something is wrong with urxvt, but I was not able to reproduce such differences in behavior with anything other than mutt. What the hell is going on here?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.