tm

Есть

список телефонов без "8" fone.csv
953xxxxx45
913xxxxx92
913xxxxx15

и

шаблон phonebook.vcf
BEGIN:VCARD
VERSION:3.0
FN:
N:;;;;
TEL;TYPE=CELL:
END:VCARD
BEGIN:VCARD
VERSION:3.0
FN:
N:;;;;
TEL;TYPE=CELL:
END:VCARD
BEGIN:VCARD
VERSION:3.0
FN:
N:;;;;
TEL;TYPE=CELL:
END:VCARD

для вставки в телефонную книгу. Нужно добавить номера телефонов к полю TEL;TYPE=CELL: с добавлением "8"

exec 3< fone.txt
while read template ; do
    case $template in
        TEL\;*) read -u 3 num
                template+=8$num ;;
    esac
    echo $template
done < phonebook.vcf > new.vcf
#!/bin/bash
RM=/bin/rm
CP=/bin/cp
MV=/bin/mv
TAR=/bin/tar
FIND=/usr/bin/find
DATE=`date +%d`
BACK=/backup
DIR_JIRA=/opt/atlassian/jira
DIR_JIRA_MNT=/mnt/service/jira
BACK_JIRA=/backup/jira
BACK_JIRA_MONTH=/backup/jira/month
BACK_JIRA_DAY=/backup/jira/day
inc_jira=/backup/jira/jira.inc
inc_jira_mnt=/backup/jira/jira-mnt.inc
inc_jira_day=/backup/jira/jira_day.inc
inc_jira_mnt_day=/backup/jira/jira-mnt_day.inc
if [ ! -d "$BACK" ]; then
/bin/mkdir /backup
fi

   Этот небольшой скриптик помог мне на время избавиться от назойливых звонков сотрудников, жалующихся на отсутствие телефонной связи. По какой-то непонятной мне причине голосовой шлюз переставал выполнять возложенные на него задачи. Перезагрузка попитанию не помогала, да и каждый час не набегаешься к нему. Пришлось воять:

nano /home/script.sh
#!/usr/bin/expect -f
set timeout 20
# router user name
set name "eitg"
# router pass
set pass "123"
# router IP
set routerip "192.168.14.2"
set routercmd [lindex $argv 0]
# start telnet
spawn telnet $routerip
# send username; password
expect "Login:"
send -- "$name\r"
expect "Password:"
send -- "$pass\r"
#shell
expect "Console>"
send --  "net reset\r"
#execute command
expect " \r"
sleep 6
send -- "y\n\r"
interact

 

Добавил его в крон на каждый час

crontab -e

0 */1 * * * /home/home/script.sh

сделал скрипт исполняемым

chmod +x /home/script.sh

и пошёл пить молоко с пряниками =)