Regex - Строка захвата После метки времени

Вам понадобится пусковая установка (файл .desktop). Вам нужны следующие параметры:

  • Exec=gksudo -k -u root /path/toyourscript.sh Говорит системе, что нужно выполнить и что это должно быть выполнено от имени root. Вы также можете просто ввести здесь свой сценарий вместо указания пути к его файлу, но это... грязно.
  • Terminal=true Заставляет его открываться в терминале

Также, вероятно, вам следует использовать dist-upgrade, потому что он более стабилен. Вот как выглядел мой .desktop, когда я делал что-то подобное:

[Desktop Entry]
Encoding=UTF-8
Name=Updater
Comment=short script
Type=Application
Exec=gksudo -k -u root /home/andrzej/Documents/update.sh
Terminal=true
Categories=

upgrade и dist-upgrade также должны требовать подтверждения. Когда вы запускаете их в терминале, вы можете просто ввести y и нажать enter, но если вы запустите их с .desktop, они закроются при подтверждении, поэтому вам нужно добавить опцию -y, например, так: sudo apt-get dist-upgrade -y

1
10.10.2018, 23:28
1 ответ

Учитывая, что вопрос касается именно регулярного выражения:

grep -Eo '\s(\w+).$' file

 UAT01 
 Test04 
 Dev02
 Test0

Пояснение:

`\s` matches any whitespace character.
`(\w+)` is the first Capturing Group 
 `\w+` matches any word character  and it is equal to [a-zA-Z0-9_]
 `+ ` Quantifier — Matches between one and unlimited times, as many times as possible.
 `.` matches any character (except for line terminators)
 `$` asserts position at the end of the string, or before the line terminator right at the end of the string.

Последние строки можно извлечь намного проще, используя cutилиawk

cut -d' ' -f 7 file

awk '{print $7}' file
1
27.01.2020, 23:42

Теги

Похожие вопросы