grep первое число в файле

grep первое число в файле

У меня есть файл со следующей строкой:

333.222.2.1

Какая команда в Linux позволяет выполнить grep только 333 и присвоить его переменной?

решение1

Короткийрезатькомандный подход:

v=$(cut -d'.' -f1 filename)
echo $v
333

Или сгрэп:

v=$(grep -o '^[0-9]*' filename)

решение2

Если в файле нет других строк, то var=$(awk -F. '{print $1}' filename)сделаем то, что вам нужно.

решение3

Мне это помогло:

grep -oE '^\s*[0-9]+' filename

Присвоение переменной:

var=$(grep -oE '^\s*[0-9]+' filename.txt)

Связанный контент