我正在寻找一种有效的方法来检查一个文件存在于一个目录。我在网上搜索的时候偶然发现了这行代码。看起来像是在主目录上运行测试。
if test -e $HOME$; then echo $HOME$; fi done
字符串如果test命令以home目录作为参数运行,这意味着什么?这是测试文件是否存在的有效方法吗?我尝试执行代码,测试成功。但我不明白为什么测试成功了。
jdgnovmf1#
test是一个用于您的目的的命令,但是您使用的是Linux,并且确定文件是否存在的方法非常庞大(即使您可以为此开发特定的程序)。来自男人:
TEST(1) User Commands TEST(1) NAME test - check file types and compare values SYNOPSIS test EXPRESSION test [ EXPRESSION ] [ ] [ OPTION ... -e FILE FILE exists ...
字符串关于你的最后一个问题,测试将验证是否$HOME存在;如果存在,则打印$HOME
smtd7mpg2#
如果你知道你想要检查的文件,你可以像这样使用条件:
-e
if [[ -e /path/to/file ]] then echo "exist" else echo "does not exist" fi
字符串如果你只是想检查一个目录是否为空,你可以尝试:
-I
-n
var=$(ls -a -I . -I .. /dir/) if [[ -n $var ]] then echo "dir is not empty" else echo "dir is empty" fi
型
vs91vp4v3#
FILE='some_file_to_check' [ -f "${FILE}" ] && echo "File ${FILE} exists."
字符串一行:
FILE='some_file_to_check'; [ -f "${FILE}" ] && echo "File ${FILE} exists."
3条答案
按热度按时间jdgnovmf1#
test是一个用于您的目的的命令,但是您使用的是Linux,并且确定文件是否存在的方法非常庞大(即使您可以为此开发特定的程序)。
来自男人:
字符串
关于你的最后一个问题,测试将验证是否$HOME存在;如果存在,则打印$HOME
smtd7mpg2#
如果你知道你想要检查的文件,你可以像这样使用条件:
-e
:检查文件是否存在字符串
如果你只是想检查一个目录是否为空,你可以尝试:
-I
:避免列出点-n
:检查$var是否为空型
vs91vp4v3#
字符串
一行:
型