Mike Werner <[EMAIL PROTECTED]> wrote: >It appears I was too optomistic. It's not working. Here's the error from >the exim log (originally all one line - wrapped here for clarity): > >2000-06-11 14:13:02 131CEI-0002xP-00 ** >|/home/picuser/picadmin/message_handle.sh ><[EMAIL PROTECTED]> D=userforward T=address_pipe: Child process of >address_pipe transport returned 1 from command: > /home/picuser/picadmin/message_handle.sh > >The local username on my box is picuser, and the shell script I'm trying to >write is message_handle.sh
[snip] >Here's the shell script as it currently stands: > >----- start message_handle.sh ----- >#!/bin/sh > >WD = /home/picuser/picadmin > >exec cat > $WD/message.txt >return 0 >----- end message_handle.sh ----- > >As you can see, it is a *very* simple script. This has bitten me before. cat is an external command, living in /bin/cat, and so /bin needs to be on your $PATH in order for this to work. Normally it is, but by default exim filters are run with only /usr/bin on their $PATH. Either edit /etc/exim.conf and add a line reading 'path = /usr/bin:/bin' to the address_pipe transport (just below 'driver = pipe') [1], or else put 'export PATH=/usr/bin:/bin' at the top of any shell scripts you call from your .forward file. I've tested the second of these, but not the first. :) You could also just use '/bin/cat' instead of 'cat'. [1] I'm assuming you're using something close to the default exim.conf here. -- Colin Watson [EMAIL PROTECTED]