Текст Greping после матча с косой чертой

У меня были разные проблемы с обновлением 16.04, но в итоге он работал. Убедитесь, что есть собственный_cloud.conf в / etc / apache2 / sites-enabled и / etc / apache2 / conf-enabled. Также убедитесь, что ваш каталог данных настроен правильно в /var/www/owncloud/config/config.php, а также убедитесь, что пользователь / группа www-data владеет и имеет разрешения на чтение / запись. Если у вас по-прежнему возникают проблемы, найдите инструкции по ручной установке и убедитесь, что все необходимые модули php установлены и включены (они не могут быть связаны, потому что по какой-то причине сайт моего сайта заблокирован на моей работе). Руководства содержат все модули как php5_modulename, поэтому просто используйте php_modulename, чтобы получить версию php 7.

Не забудьте проверить журнал ошибок apache в /var/log/apache2/error.log чтобы узнать, дает ли он вам полезные ошибки.

0
задан 20 February 2018 в 03:34

4 ответа

Почему бы не использовать механизм конвейера с grep и sed следующим образом:

grep "Motherboard P/N" souceFile | sed 's/^.*Motherboard\ P\/N\ \:\ //1'

где sourceFile - это файл, содержащий ваш текст. Sed имеет следующее регулярное выражение:

^.* означает: от начала строки любое количество символов до строки Motherboard с еще несколькими символами, которым нужен комментарий (ниже) \ символ перед специальными символами «экранирует» их, поэтому они не интерпретируются оболочкой или командой, а вместо этого используются как простые символы: пробел, косая черта и двоеточие.

Или вы можете передать вывод команды (например, полезный sudo lshw)

sudo lshw | grep "Motherboard P/N" | sed 's/^.*Motherboard\ P\/N\ \:\ //1'

Однако, скорее всего, вы не найдете «Материнская плата P / N: «текст в выводе lshw, а выход этого примера может быть пустым ...

EDIT:

Или, поскольку я вижу, что вам нужно от ваших комментариев, вы могли бы слегка измените регулярное выражение, чтобы одновременно использовать «S / N» и «P / N». Используйте точку . вместо символа, который изменяется между строк исходного текста. Например: [≤ 12] sed 's/^.*Motherboard\ P\/N\ \:\ //1' # the initial version sed 's/^.*Motherboard\ .\/N\ \:\ //1' # dot instead of "P"

... то же самое для grep

0
ответ дан 17 July 2018 в 20:27
grep -oP 'Motherboard P/N : \K.*'

Объяснение:

-o Печать только соответствующей части строки -P Использование Perl-совместимого регулярного выражения (PCRE) - это позволяет использовать более сложные функции регулярного выражения \K Не учитывать предыдущий как часть матча. .* Сопоставьте ноль или более любого символа (кроме новой строки)
1
ответ дан 17 July 2018 в 20:27

Почему бы не использовать механизм конвейера с grep и sed следующим образом:

grep "Motherboard P/N" souceFile | sed 's/^.*Motherboard\ P\/N\ \:\ //1'

где sourceFile - это файл, содержащий ваш текст. Sed имеет следующее регулярное выражение:

^.* означает: от начала строки любое количество символов до строки Motherboard с еще несколькими символами, которым нужен комментарий (ниже) \ символ перед специальными символами «экранирует» их, поэтому они не интерпретируются оболочкой или командой, а вместо этого используются как простые символы: пробел, косая черта и двоеточие.

Или вы можете передать вывод команды (например, полезный sudo lshw)

sudo lshw | grep "Motherboard P/N" | sed 's/^.*Motherboard\ P\/N\ \:\ //1'

Однако, скорее всего, вы не найдете «Материнская плата P / N: «текст в выводе lshw, а выход этого примера может быть пустым ...

EDIT:

Или, поскольку я вижу, что вам нужно от ваших комментариев, вы могли бы слегка измените регулярное выражение, чтобы одновременно использовать «S / N» и «P / N». Используйте точку . вместо символа, который изменяется между строк исходного текста. Например: [≤ 12] sed 's/^.*Motherboard\ P\/N\ \:\ //1' # the initial version sed 's/^.*Motherboard\ .\/N\ \:\ //1' # dot instead of "P"

... то же самое для grep

0
ответ дан 23 July 2018 в 21:06
grep -oP 'Motherboard P/N : \K.*'

Объяснение:

-o Печать только соответствующей части строки -P Использование Perl-совместимого регулярного выражения (PCRE) - это позволяет использовать более сложные функции регулярного выражения \K Не учитывать предыдущий как часть матча. .* Сопоставьте ноль или более любого символа (кроме новой строки)
1
ответ дан 23 July 2018 в 21:06

Другие вопросы по тегам:

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