Замените символы в строке, сохраняя переменную последовательность чисел без изменений, используя sed

Чтобы проверить код выхода, вам нужно проверить специальную переменную, которая является "$?" Эта переменная сообщает вам код выхода последней выполненной вами команды.

ssh $user@$slave_ip 'bash $dest_root/$dest_dir/slave_run ; echo $?'
0
04.12.2019, 21:34
2 ответа

Я бы предложил следующую sedзамену:

$ s="one0.000230002two, one1293.02two, or one42two "
$ sed -E 's/([^ 0-9]+)([0-9]+(\.[0-9]+)?)([^ 0-9,]+)/three\2four/g' <<<"$s"
three0.000230002four, three1293.02four, or three42four
0
28.01.2020, 03:03

Вы можете сделать что-то вроде:

sed 's/one\([[:digit:].]*\)two/three\1four/g'

Захват\(...\)был сопоставлен с (здесь последовательностью из 0 или более десятичных цифр или периодом ), поэтому в замене он может упоминаться как \1.

1
28.01.2020, 03:03

Теги

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