# fs_mounted $dev $mnt_pt $fs_type
# This is shell script version of fs_mounted, check if the file system is
# mounted.
fs_mounted()
{
_BINGO=
[ $# -eq 3 ] || return $ERRNO_EINVAL
_BINGO="`$AWK '{if (\$1 == _DEVICE && \$2 == _MNT_PT && \$3 == _FS_TYPE) print \$1}' _DEVICE=$1 _MNT_PT=$2 _FS_TYPE=$3 $MNTTAB`"
[ "$_BINGO" ] || return -1
return 0;
}
shell script的執行與shell command中的awk對於一些保留字元處理跟sed一樣
要小心點
這個例子裡面注意$1 $2 $3,在AWK ' '單引號裡面的是awk的$1$2$3,在
外面_DEVICE=$1...是shell的 $1 $2 $3。_DEVICE _MNT_PT 等是awk的
變數。所以awk的$1 $2 $3有\這個escape在前面。也就是說shell
不處理它們並把這些送給awk處理。