| echo T.redir: test redirections |
| |
| awk=${awk-../a.out} |
| |
| $awk '{ print >"foo" }' /etc/passwd |
| diff foo /etc/passwd || echo 'BAD: T.redir (print >"foo")' |
| |
| rm -f foo |
| $awk '{ print >>"foo" }' /etc/passwd |
| diff foo /etc/passwd || echo 'BAD: T.redir (print >>"foo")' |
| |
| rm -f foo |
| $awk 'NR%2 == 1 { print >>"foo" } |
| NR%2 == 0 { print >"foo" }' /etc/passwd |
| diff foo /etc/passwd || echo 'BAD: T.redir (print > and >>"foo")' |
| |
| rm -f foo |
| $awk '{ print | "cat >foo" }' /etc/passwd |
| diff foo /etc/passwd || echo 'BAD: T.redir (print | "cat >foo")' |
| |
| # tests flush of stdout before opening pipe |
| echo ' head |
| 1 |
| 2' >foo1 |
| $awk 'BEGIN { print " head" |
| for (i = 1; i < 3; i++) |
| print i | "sort" }' >foo2 |
| diff foo1 foo2 || echo 'BAD: T.redir (buffering)' |
| |
| rm -f foo[12] |
| $awk '{ print >"/dev/stderr" }' /etc/passwd 1>foo1 2>foo2 |
| diff foo2 /etc/passwd || echo 'BAD: T.redir (print >"/dev/stderr")' |
| diff foo1 /dev/null || echo 'BAD: T.redir (print >"/dev/stderr")' |
| |
| rm -f foo[12] |
| $awk '{ print >"/dev/stdout" }' /etc/passwd 1>foo1 2>foo2 |
| diff foo1 /etc/passwd || echo 'BAD: T.redir (print >"/dev/stdout")' |
| diff foo2 /dev/null || echo 'BAD: T.redir (print >"/dev/stderr")' |