为了检查目录是否存在,我使用了下面的命令
hdfs dfs -test -d /HDFS/Sample
这里的示例是hdfs中的一个目录。命令说,如果路径是目录,它将返回0,当我在提示符下执行此命令时,我无法在命令提示符下得到0。
ryhaxcpt1#
[oracle@bigdatalite tmp]$ hdfs dfs -ls Found 12 items drwx------ - oracle oracle 0 2018-01-09 15:06 .Trash drwxr-xr-x - oracle oracle 0 2018-01-09 16:06 .sparkStaging drwx------ - oracle oracle 0 2017-11-20 14:44 .staging drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 indexMetadata drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 jobRegistry drwxr-xr-x - oracle oracle 0 2018-10-02 11:04 kevin_learning drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 mediademo drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 moviedemo drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 moviework drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 oggdemo drwxr-xr-x - oracle oracle 0 2017-01-15 17:19 oozie-oozi drwxrwxrwx - oracle oracle 0 2017-11-17 16:39 tmp [oracle@bigdatalite tmp]$ hdfs dfs -test -d kevin_learning [oracle@bigdatalite tmp]$ echo $? 0 [oracle@bigdatalite tmp]$ hdfs dfs -test -d kevin_learning2 [oracle@bigdatalite tmp]$ echo $? 1 [oracle@bigdatalite tmp]$
c0vxltue2#
您必须检查命令的退出状态。在bash中您可以使用 echo $? .
echo $?
$hdfs dfs -test -d /tmp/testdir $echo $? 1
以上示例显示 /tmp/testdir 不退出。
/tmp/testdir
2条答案
按热度按时间ryhaxcpt1#
c0vxltue2#
您必须检查命令的退出状态。在bash中您可以使用
echo $?
.以上示例显示
/tmp/testdir
不退出。