Jump to content

Добавление строки если таковой нет


Recommended Posts

Доброго времени суток. Мучаюсь с такой задачей:

Нужно организовать поиск строки в текстовых файлах и если таковой не будет найдено, добавить её в конец файла. Пример, имеем файл:

$TTL 3600[LF]
yyy.yy.[->]IN[->]SOA[->]ns1.xxx.xx. support.xxx.xx. (2016112905 10800 3600 604800 86400)[LF]
yyy.yy.[->]IN[->]NS[->]ns1.xxx.xx.[LF]
yyy.yy.[->]IN[->]NS[->]ns2.xxx.xx.[LF]
yyy.yy.[->]IN[->]MX[->]10 mail[LF]
yyy.yy.[->]IN[->]A[->]1.1.1.1[LF]
www[->]IN[->]A[->]1.1.1.1[LF]
mail[->]3600[->]IN[->]A[->]1.1.1.1[LF]
pop[->]3600[->]IN[->]A[->]1.1.1.1[LF]
smtp[->]3600[->]IN[->]A[->]1.1.1.1[LF]
yyy.yy.[->]3600[->]IN[->]TXT[->]"v=spf1 a mx ip4:1.1.1.1 ip4:2.2.2.2 +a:mail.xxx.xx +a:smtp.zzz.zz ~all"[LF]
dkim._domainkey[->]3600[->]IN[->]TXT[->]"v=DKIM1\; k=rsa\; s=email\; p="[LF]

Форум не передаёт точной табуляции и новых строк, поэтому я дописал их текстом вида: [->]  - табуляция, [LF] - конец строки.

Как видно по примеру, не хватает строки в конце файла, вот её и нужно добавлять, ЕСЛИ её нет.

_dmarc[->]3600[->]IN[->]TXT[->]"v=DMARC1\; p=quarantine\; sp=quarantine"[LF]

Я далек от скриптописания, но VDS всё же надо как то поддерживать. Реализовать цикличность думаю кроном, но как написать сам скрипт? Поэтому прошу помощи.

Спасибо, с уважением.

PS: давно читаю форум, но зарегистрироваться, а уж темболее написать что-то - духу не хватало.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...