Как узнать, существует ли файл с префиксом PY - PullRequest
0 голосов
/ 09 октября 2018

У меня есть сценарий оболочки, в котором я пытаюсь найти, существует ли какой-либо файл, начинающийся с префикса "PY".Если он существует, то мне нужно выполнить определенные действия.Мой код

#!/bin/bash
export FILE=/usr/local/a/PY_`date +%Y%m%d`*.txt
if [ -e $FILE ] 
then
// do something
else
//do something else
fi

Что с этим не так?Он не идентифицирует файл, и элемент управления всегда находится в блоке else, даже если файл присутствует там.Пожалуйста, помогите!

Ответы [ 2 ]

0 голосов
/ 09 октября 2018

Для этого может быть другой способ:

Получить количество файлов типа PY_ date +% Y% m% d *.txt, и если это число большеравный 1, затем выполните ваши действия:

#!/bin/bash

Date=$(date +%Y%m%d)
file_count=$(find /usr/local/a -type f -name "PY_${Date}*.txt"|wc -l)
if [[ "$file_count" -ge "1" ]]
then
//do your actions//
else
//do something else//
fi
0 голосов
/ 09 октября 2018

Как насчет поиска:

find /usr/local/a/ -maxdepth 1 -name "PY_`date +%Y%m%d`*.txt" -exec <do_something> \;

(я не уверен, использовать ли maxdepth 1 или 0)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...