linux - Bash - grep 问题

标签 linux bash shell

我编写了一个小脚本,用于添加新的挂载点,不幸的是,当将完整路径作为字符串传递给 grep 函数时,它得到的是整个字符串的输入,而只是其中的一小部分。 以下是脚本的相关部分:

DIR_TO_CREATE="/ODV"
MOUNT_POINT="ta1bbn01:/SwDrop/Repository/ODV $DIR_TO_CREATE nfs  rw,hard,async,noatime,nodiratime,intr,bg,tcp,         vers=3,rsize=32768,wsize=32768,timeo=4"
FSTAB="/etc/fstab"
isFileContainString () {
result=`grep -Fxc "$2" "$1"`
if [ "$result" -eq 1  ]; then
 echo "fstab already contain this mountpoint"
else
echo "doesn't contain"
fi
}
#MAIN
isFileContainString $FSTAB $MOUNT_POINT

最佳答案

报价!

isFileContainString "$FSTAB" "$MOUNT_POINT"

否则,$2仅获取$MOUNT_POINT的第一个单词;后续单词进入 $3 等。

关于linux - Bash - grep 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29974692/

相关文章:

c - 如何编写由用户空间函数调用的内核空间函数?

linux - 在Linux中,如何使用ssh和expect在远程服务器上监控shell脚本执行的进度

linux - 从 Linux 设置一个 Windows exe 图标(没有 Wine?)

windows - Cygwin .sh 文件作为 Windows 任务计划程序运行

bash - Bash 是一种解释型语言吗?

android - 如何正确调用 mbstowcs?

linux - 如何在overlayfs中使用多个低层

客户端服务器套接字编程c-linux

bash - 按列消除部分重复行并保留最后一行

shell - 管道 qrencode 到 eog 以避免创建文件