Как узнать, был ли файл удален и создан в bash? - PullRequest
0 голосов
/ 23 февраля 2019

У меня есть сценарий, где существует сценарий для удаления файлов в соответствии с условиями.

В настоящее время сценарий выглядит так: rem.sh

If [ -e file1 ]; then
    rm -f file1
elif [ -e file2 ]; then
     rm -f file2
 fi

У меня есть другой сценарий, который вызывает rem.sh

main.sh

1          rem.sh #should remove file1
2         touch file1
3          xxx
4          xxx
5         xxx
6         rem.sh #should remove file2 only
7         touch file2

Если я запускаю main.sh, он только удаляет file1 и создает file1.Есть ли способ удалить и создать file2 и так далее?

EDIT: я хочу заменить [-e file] на какое-то условие, которое удаляет file2 при повторном вызове rem.sh

Ответы [ 2 ]

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

Вы пытаетесь заставить условие работать для каждого файла?Таким образом, вам не нужно вводить имя файла каждый раз?Если это так, вы можете просто использовать счетчик или использовать команду чтения для отправки пользовательского ввода в переменную, а затем использовать его в своем операторе if.

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

вместо того, чтобы усложнять то, что я думаю, вы просто хотите удалить содержимое файлов в определенных точках вашего основного скрипта.Таким образом, вместо пары rm/touch, просто сбросьте ноль в файл.

1   >file1
2   xxx
3   xxx
4   >file2
5   xxx
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...