Grep найти строку, за которой не следует символ

Замените имя версии на новое имя версии Ubuntu (, например, Trusted to xenial )в /etc/apt/sources.list и любые другие в /etc/apt/sources.list.d/ *не стесняйтесь использовать sed.

Тогда:

  • apt -получить обновление
  • apt -получить обновление
  • apt -получить dist -обновить
0
04.02.2020, 05:13
1 ответ

grepне подходит для этого. Если вы должны использовать его, будет работать следующее:

grep -Fv = <<<$(printf '%s\n' $params)

и если вы должны использоватьgrep -o:

grep -o '^[^=]*$' <<<$(printf '%s\n' $params)
  • в приведенном выше примере используется bashдля печати wordsиз params, каждое на отдельной строке, таким образом, grepнамного проще использовать (определение wordsбудет зависеть от значенияIFS)

awkможет быть лучше:

awk 'BEGIN{RS=" "} !/=/' <<<"$params"

или:

awk '{for(i=1;i<=NF;i++) if($i !~ /=/) print $i}' <<<"$params"

bashможно добиться этого самостоятельно с помощью параметра массива:

paramsarray=( $params )
echo "${paramsarray[@]/*=*}"
0
28.04.2021, 23:24

Теги

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