linux shell 如何判断一个文件是不是存在

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux shell 如何判断一个文件是不是存在相关的知识,希望对你有一定的参考价值。

通常我们用下面的shell,在linux下判断某个确定的文件是否存在,但是要判断固定以hbc开头的文件,我们可以用命令rm -rf hbc* 删除以hbc开头的文件,但是该怎么去判断以hbc开头的文件是否存在? if [ -f "filename" ] then echo "文件存在" else echo "文件不存在" fi

参考技术A 了解你的意思,首先,test命令是判断某一个特定的文件相关信息,也就是当你使用test这个命令的时候,你是清楚它叫什么名字的(只是你不知道它的相关信息)。如果你要判断比如你说的以hbc*开头的一类文件,最好就是使用ls命令或者find命令来作。你可以参考一下,下面的小测试。
mike
>>>
ls
-d
???
12-04-20
23:15
acp/
apc/
scl
tmp/
xmy/
mike
>>>
test
-d
x??
12-04-20
23:15
mike
>>>
echo
$?
12-04-20
23:16
0
mike
>>>
test
-d
x*
12-04-20
23:16
test:
too
many
arguments
使用find命令能很好查找已hbc开头的文件或者目录,但是它不能判断有没有这样的文件,因为你不能通过find的命令执行状态来判断是否有这样的文件,但是可以把find的输出导向到一个文件,从而对文件进行判断。如下:
mike
>>>
find
./
-type
d
-name
"FUK*"
-print
12-04-20
23:24
mike
>>>
echo
$?
12-04-20
23:24
0

以上是关于linux shell 如何判断一个文件是不是存在的主要内容,如果未能解决你的问题,请参考以下文章

关于linux,shell脚本中怎样判断文件是不是有内容?

shell判断文件是不是存在

shell判断文件是不是存在

求Bash Shell脚本,判定文件是不是存在。

在VC里如何检查一个文件是不是存在

Shell脚本判断文件是不是存在