aboutsummaryrefslogblamecommitdiff
path: root/bin/fnl
blob: d27d1f904204924364665b8cadef28dd1d0275ff (plain) (tree)




















                                                                        
#!/bin/sh
# Run a command and save its output and error to temporary files

# Check we have at least one argument
if [ "$#" -eq 0 ] ; then
    printf >&2 'fnl: Command needed\n'
    return 2
fi

# Create a temporary directory; note that we *don't* clean it up on exit
dir=$(mktd fnl) || exit

# Run the command; keep its exit status
"$@" >"$dir"/stdout 2>"$dir"/stderr
ret=$?

# Run wc(1) on each of the files
wc -- "$dir"/*

# Exit with the wrapped command's exit status
exit "$ret"