Индикатор сообщений появляется только тогда, когда приложение зарегистрировалось для его использования; по умолчанию приложения не регистрируются, что означает, что индикатор сообщений скрыт. Однако некоторые приложения, такие как Thunderbird, регистрируются с индикатором, как только вы их открываете, и не оставляете видимого способа их удаления.
Мое решение - сбросить список приложений, зарегистрированных на индикаторе, до по умолчанию (пустой), затем запустите индикатор, чтобы обновить его.
Откройте терминал и скопируйте / вставьте следующее:
dconf reset /com/canonical/indicator/messages/applications
killall indicator-messages-service
С sed:
sed 's/[^[:digit:]]\+//g'
[^[:digit:]]\+ соответствует одному или нескольким (+) нецифровым ([^[:digit:]]), и мы заменяем это пустой строкой, глобально ( g) Используйте sed -i (или sed -i.bak для сохранения оригинала с расширением .bak) для редактирования файла на месте.
То же самое с функцией awk sub(Regex, Replacement, Input):
awk 'sub("[^[:digit:]]+", "", $0)'
Используйте --inplace для редактирования файла на месте.
Пример:
% cat file.txt
Sydney 33
Castle hill 47
Lake's town hill 79
% sed 's/[^[:digit:]]\+//g' file.txt
33
47
79
% awk 'sub("[^[:digit:]]+", "", $0)' file.txt
33
47
79
С tr (и если вы не хотите удалять новые строки)
$ tr -dc '[0-9\n]' < file1.txt
33
47
79
Учитывая структуру вашего файла, вы также можете использовать awk для печати последнего пробела с разделителями поле:
$ awk '{print $NF}' file1.txt
33
47
79
Использование:
$ echo "Jim 5" > file.txt
$ echo "Jane 3" >> file.txt
$ sed -i 's/[^0-9]//g' file.txt
$ cat file.txt
5
3
Использование ваших тестовых данных:
$ cat file1.txt
Sydney 33
Castle hill 47
Lake's town hill 79
$ sed -i 's/[^0-9]//g' file1.txt
$ cat file1.txt
33
47
79
С tr (и если вы не хотите удалять новые строки)
$ tr -dc '[0-9\n]' < file1.txt
33
47
79
Учитывая структуру вашего файла, вы также можете использовать awk для печати последнего пробела с разделителями поле:
$ awk '{print $NF}' file1.txt
33
47
79
Использование:
$ echo "Jim 5" > file.txt
$ echo "Jane 3" >> file.txt
$ sed -i 's/[^0-9]//g' file.txt
$ cat file.txt
5
3
Использование ваших тестовых данных:
$ cat file1.txt
Sydney 33
Castle hill 47
Lake's town hill 79
$ sed -i 's/[^0-9]//g' file1.txt
$ cat file1.txt
33
47
79
С tr (и если вы не хотите удалять новые строки)
$ tr -dc '[0-9\n]' < file1.txt
33
47
79
Учитывая структуру вашего файла, вы также можете использовать awk для печати последнего пробела с разделителями поле:
$ awk '{print $NF}' file1.txt
33
47
79
Использование:
$ echo "Jim 5" > file.txt
$ echo "Jane 3" >> file.txt
$ sed -i 's/[^0-9]//g' file.txt
$ cat file.txt
5
3
Использование ваших тестовых данных:
$ cat file1.txt
Sydney 33
Castle hill 47
Lake's town hill 79
$ sed -i 's/[^0-9]//g' file1.txt
$ cat file1.txt
33
47
79
С tr (и если вы не хотите удалять новые строки)
$ tr -dc '[0-9\n]' < file1.txt
33
47
79
Учитывая структуру вашего файла, вы также можете использовать awk для печати последнего пробела с разделителями поле:
$ awk '{print $NF}' file1.txt
33
47
79
Использование:
$ echo "Jim 5" > file.txt
$ echo "Jane 3" >> file.txt
$ sed -i 's/[^0-9]//g' file.txt
$ cat file.txt
5
3
Использование ваших тестовых данных:
$ cat file1.txt
Sydney 33
Castle hill 47
Lake's town hill 79
$ sed -i 's/[^0-9]//g' file1.txt
$ cat file1.txt
33
47
79
С tr (и если вы не хотите удалять новые строки)
$ tr -dc '[0-9\n]' < file1.txt
33
47
79
Учитывая структуру вашего файла, вы также можете использовать awk для печати последнего пробела с разделителями поле:
$ awk '{print $NF}' file1.txt
33
47
79
Использование:
$ echo "Jim 5" > file.txt
$ echo "Jane 3" >> file.txt
$ sed -i 's/[^0-9]//g' file.txt
$ cat file.txt
5
3
Использование ваших тестовых данных:
$ cat file1.txt
Sydney 33
Castle hill 47
Lake's town hill 79
$ sed -i 's/[^0-9]//g' file1.txt
$ cat file1.txt
33
47
79