Что-то не так с вашим DNS. rs.archive.ubuntu.com
должен преобразовываться в 147.91.175.253, но в вашей среде вы получаете 172.16.0.3, адрес в пространстве RFC 1918 -, то есть адрес, предназначенный для использования в вашей локальной сети. Глядя дальше в журнал, вы получаете 172.16.0.3 для каждого поиска DNS.
Проверьте свой /etc/resolv.conf
и посмотрите, что вы используете в качестве DNS-сервера. Если вы не находитесь в корпоративной сети, где это может вызвать проблемы, начните вместо этого использовать DNS-сервер Google 8.8.8.8. Если вы находитесь в корпоративной сети, поговорите со своими ИТ-специалистами.
Достаточно просто:grep -v '^[[:alpha:]]' testfile
с таким тестовым файлом:
$ cat testfile
sfdsaf
1sdflad
asfd
,asdfasdf
safdaf
Приведенная выше команда вернет:
$ grep -v '^[[:alpha:]]' testfile
1sdflad
asfd
,asdfasdf
Почему?
^
выбирает начало строки [[:alpha:]]
greps на 1 букву -v
инвертирует совпадение Альтернативой может быть использование sed '/^[[:alpha:]]/d' testfile
, где sed
команда d
удаляет все, что соответствует ^[[:alpha:]]
--, что опять-таки является буквой в начале строки.
Другим вариантом являетсяawk '/^[^a-zA-Z]/ { print $0 }' testfile
Просто используйте параметр regex в grep и инвертируйте результат поиска буквы в качестве первого символа:
$ cat file.txt
asd
Ajnjn
bdfadsf
Bkkkknm
csdgadga
4gafga
dfsdf
esdfasdg
2fsefse
~asdasd
dfdfsd
fartaherh
3adsfasdf
$ grep -ve '^[a-zA-Z]' file.txt
4gafga
2fsefse
~asdasd
dfdfsd
3adsfasdf
Вы также можете попробовать команду ниже
команда1:
sed -n '/^[a-zA-Z]/!p' testfile
команда2:
awk '$0 !~ /^[a-zA-Z]/{print $0}' testfile