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

#linux #string #bash

#linux #строка #bash

Вопрос:

Если я выполняю какую-либо команду в оболочке Linux, как я могу сохранить вывод в строку (переменную), чтобы я мог использовать его позже? Мне это нужно для скрипта Bash, пожалуйста, помогите.

Ответ №1:

 str=$(command)
  

Ответ №2:

result=`command` или result=$(command) оба присваивают вывод command result переменной.

Ответ №3:

Просто чтобы добавить к другим ответам, вы можете использовать вывод команды непосредственно в другой команде, не присваивая его промежуточной переменной. Пример:

 wget https://feeds.npr.org/510289/podcast.xml -O podcast_`date  %Y-%m-%d`.xml 
  

является сокращением для

 TODAY=`date  %Y-%m-%d`
wget https://feeds.npr.org/510289/podcast.xml -O podcast_${TODAY}.xml 
  

и сегодня вычисляется как

 wget https://feeds.npr.org/510289/podcast.xml -O podcast_2020-11-29.xml 
  

Ответ №4:

echo "Output of my command:" $(command)

Комментарии:

1. Ваш ответ можно улучшить, добавив больше информации о том, как предлагаемое решение решает проблему и как это помогает OP.