Удаление лишнего пространства при запуске в bash

Я пытаюсь получить extension_dir и сохранить его в переменной

php -i | grep extension_dir дает

extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules как вывод

Я хочу хранить /usr/lib64/php/modules в переменной

Это то, что я пытался
php -i | grep extension_dir | cut -d'>' -f3 дает /usr/lib64/php/modules

Как я могу удалить место в начале

Я приветствую любое более чистое решение

1

Решение

использование awk вместо cut:

php -i | grep extension_dir | awk -F '=> ' '{print $3}'

Даже grep можно удалить с помощью awk:

php -i | awk -F '=> ' '/extension_dir/{print $3}'
5

Другие решения

С СЭД:

php -i | grep extension_dir | sed 's/.* => //'
2

php -i | sed -n '/extension_dir/ s/.*=> *//p'

достаточно простого sed (или awk), нет нужды в grep в середине

0

ваша командная строка

php -i | grep extension_dir | cut -d '>' -f3

можно изменить на

php -i | grep extension_dir | cut -d '>' -f3|cut -c 2-

вырезает из второго символа, игнорируя первый символ, который является пробелом

0
По вопросам рекламы [email protected]