У меня есть список ips или имен хостов, и я хочу сравнить их с моей базой данных, я пытаюсь сделать это через командную строку, и я сломаю ее.Подпись для командной строки perl
мой список IP выглядит следующим образом
10.0.0.1
10.1.1.1
10.2.2.2
hostname-as-12
... etc
моя база данных выглядит так:
hostname:ip:location:contact
псевдо-код, как
open iplist
compare to database
replace inline iplist with new information
я хочу сделать это из командной строки (если ничего не узнать о его использовании)
В настоящее время моя командная строка выглядит следующим образом:
perl -i.back -pe 's/^(.+)$/$1:`grep $1 /directory/tmp/datbase.txt` | cut -d : -f2`/' iplist
так, то IPList будет изменен, как этот
10.0.0.1:10.0.0.1
10.1.1.1:10.1.1.1
10.2.2.2: #case not found
hostname-as-12:10.3.3.3
Вам не нужно использовать регулярное выражение или perl, вы можете сделать это с помощью awk. –
Вам не нужно использовать awk, вы можете сделать это с помощью Perl. – TLP
Является ли ваш файл базы данных очень большим? – TLP