LinuxForum.Fans
Тема

запись в переменную вывода команды

Автор: l_cho 7 сообщений 3480 просмотров
#253886

Добрый день подскажите пожалуйста, существует ли способ к примеру из вывода на экран команды ls -l выдернуть нужную мне строчку и записать ее в переменную и далее с ней рабоать ?

#253887

Существует...

text
lupo@gentoo-laptop ~ % touch temp.txt
lupo@gentoo-laptop ~ % VAR=$(ls -l temp.*); echo ${VAR}
-rw-r--r-- 1 lupo lupo 0 Май 24 14:48 temp.txt
#253888

Да.
Существует. Какой вопрос, такой и ответ.


Немного выйду за рамки вопроса. Если речь про sh/bash/и т.п., то
-- получить вывод команды в переменную: VAR=$(команда)
-- нужная строчка может быть отфильтрована из вывода "ls -l" при помощи head/tail/grep/sed/awk/и т.д.

Например, VAR="$(ls -l | head -1)" -- первая строка в выводе "ls -l".

#253889
Lupo Alberto написал:
Существует...
text
lupo@gentoo-laptop ~ % touch temp.txt
lupo@gentoo-laptop ~ % VAR=$(ls -l temp.*); echo ${VAR}
-rw-r--r-- 1 lupo lupo 0 Май 24 14:48 temp.txt

Не смог уловить умысел сего кода: можно небольшое пояснение. А то я даже куда копать не знаю

#253891
"l_cho" написал:
Не смог уловить умысел сего кода: можно небольшое пояснение. А то я даже куда копать не знаю

Создать файл с именем temp.txt

text
touch temp.txt

Найти этот же файл или подобные с именем temp и произвольным расширением.

text
ls -l temp.*

Присвоить вывод предыдущей команды переменной VAR

text
VAR=$(ls -l temp.*)

Вывести значение переменной VAR

text
echo ${VAR}
#253899

Вот прям огромное СПАСИБО

#253901
"l_cho" написал:
Вот прям огромное СПАСИБО

Это только болванка, в ней не учтена куча условий.

Войдите или зарегистрируйтесь, чтобы ответить.