как проверить, существует ли файл hdfs с помощью Bash - PullRequest
0 голосов
/ 04 февраля 2019

Я хочу написать сценарий Bash, чтобы проверить, существует ли (или нет) файл в определенном месте.У меня есть несколько переменных, которые я использую, и до сих пор это работает:

if hdfs dfs -test -e $NIFI/cust_accounts/$CURRPART; then echo $NIFI/cust_accounts/$CURRPART partition is current on HDFS; fi

Тем не менее, я действительно хочу иметь возможность возвращать оператор "else".Значение «если файл существует, то 123 else (если не существует) 999».

Может ли кто-нибудь помочь мне составить выражение «else»?Спасибо!

1 Ответ

0 голосов
/ 04 февраля 2019

Помните, что [ (фактически) просто еще одна команда.Так что, где вы можете привыкнуть к if [ ... ]; then ... ; else ... ; fi, то, что у вас есть, на самом деле ничем не отличается.Вы заменяете деталь [ ... ] своим вызовом hdfs, и в итоге вы получаете тот же синтаксис:

if hdfs dfs -test -e $NIFI/cust_accounts/$CURRPART
then
  echo $NIFI/cust_accounts/$CURRPART partition is current on HDFS
else
  echo $NIFI/cust_accounts/$CURRPART partition is NOT current on HDFS
fi
...