/bin/bash /home/steven/script/backuprsync.sh
Это отдельная команда. Он запускает скрипт.
Вы можете ввести любую отдельную команду в командное поле anacrontab
.
Например:
@weekly 0 my-weekly-rm rm /tmp/delete-me
Однако гораздо чаще планируются сценарии, поскольку они позволяют выполнять более сложные задачи.
Предполагая, что у вас нет доступа к синтаксическому анализатору JSON, а ваши записи действительно настолько просты и регулярны, как вы показываете, это будет работать с использованием любого awk в любой оболочке на каждом компьютере UNIX:
$ cat tst.awk
NR == FNR {
vals["["$1"]"]
next
}
rec == "" { key = $1 }
{ rec = rec $0 ORS }
/^[[:blank:]]*},$/ {
if ( key in vals ) {
printf "%s", rec
}
key = rec = ""
}
.
$ awk -f tst.awk file_a file_b
[300] = {
name = "John",
age = "12",
address = {""},
job = "Marketing",
job a = "some job",
job b = {"some job"},
car = 0,
salary = 0
},
[302] = {
name = "John",
age = "12",
address = {""},
job = "Marketing",
job a = "some job",
job b = {"some job"},
car = 0,
salary = 0
},
Если вы используете sed , вам может помочь следующая строка:while read n; do sed -n -e "/^\[$n\]/,/^},$/p" b.txt; done < a.txt
Протестировано с помощью команды «Ниже» и работает нормально
команда
for i in `cat filea`; do sed -n '/'$i'/,/^[[:space:]]\{4\}\},$/p' fileb; done
выход
[300] = {
name = "John",
age = "12",
address = {""},
job = "Marketing",
job a = "some job",
job b = {"some job"},
car = 0,
salary = 0
},
[302] = {
name = "John",
age = "12",
address = {""},
job = "Marketing",
job a = "some job",
job b = {"some job"},
car = 0,
salary = 0
},
[303] = {
name = "John",
age = "12",
address = {
"Person street address"
},
job = "Marketing",
job a = "some job",
job b = {
"His job description"
},
car = 0,
salary = 0
},