我不知道如何准确措辞我的问题...我有代码
if grep "mynamefolder" /vol/Homefs/
then
echo "yup"
else
echo "nope"
fi
这给了我输出
grep: /vol/Homefs/: Is a directory
nope
包含代码的 sh 文件和我的目标目录不在同一个目录中(如果这有意义的话(。
我想在不通过任何子目录的情况下找到/vol/Homefs/
myfoldername
单词。做grep -d skip
,我希望能"跳过"子目录并只关注目录,即使我正在测试它的文件夹/文件/单词确实存在,也只会让我nope
。
编辑:我忘了提到我也希望mynamefolder
成为一个可以用腻子写的变量,比如 ./file spaing
和spaing
是myfoldername
的替代品。
不确定我是否做得足够好,让我知道!
你只是想要
if [ -e /vol/Homefs/"$1" ]; then
echo yup
else
echo nope
fi
带有 -e
运算符的 [
命令测试命名文件条目是否存在。
不涉及vim
,也不需要grep
。
如果你坚持使用 grep
,你应该知道grep
不适用于目录。 您可以将目录列表转换为字符串。
echo /vol/Homefs/* | grep mynamefolder