在此命令中(C shell 脚本)
make ${m} ARCH=${ARCH} >&! Make_${m}
这是什么>&!
意思?
答案1
来自手册页(对于 tcsh):
> name
>! name
>& name
>&! name
The file name is used as standard output. If the file does not
exist then it is created; if the file exists, it is truncated,
its previous contents being lost.
If the shell variable noclobber is set, then the file must not
exist or be a character special file (e.g., a terminal or
`/dev/null') or an error results. This helps prevent acciden‐
tal destruction of files. In this case the `!' forms can be
used to suppress this check.
The forms involving `&' route the diagnostic output into the
specified file as well as the standard output. name is
expanded in the same way as `<' input filenames are
所以它重定向标准输出和标准错误到给定的文件中,覆盖noclobber
检查。