Создание переменных командной строки с помощью PATH

Поскольку я больше из веб-парня, мне нужна небольшая помощь в этом, поэтому я объясню, что я пытаюсь сделать, прежде чем я спрошу.

Я создаю пакетный скрипт, который будет:

  • GET запрос с внешнего сервера (json-файл), получение данных, сохранение локально как .json
  • Используйте JQ для навигации по json для результата [0] .title
  • Используйте «название» в качестве параметра для запроса на завивание

Как только у меня есть файл локально. Я бы использовал JQ для поиска данных в объекте

cat file.json | jq '.results[0].title' > $1 && cat file.json | jq '.results[0].title' > $1 && curl -i -H "Accept: application/html" -H "Content-Type: application/html" -X GET http://example.com/test/$1 > test.txt

Можно ли установить локальные переменные в командной строке '$ 1' для временного использования в команде с каналами?

Я здесь здесь?

  • Трубы и переменные
  • Ошибка передачи переменной из bash в php
  • Как сохранить файл изображения в переменной bash?
  • вызовите сценарий оболочки с помощью переменной
  • Выйти из переменной для использования в качестве содержимого другого скрипта
  • Когда выполняется .profile?
  • Создание временного файла vs подстановка процесса и расширение переменной?
  • Маркировка команды в качестве переменной для повторного использования внутри каналов или отдельных команд
  • One Solution collect form web for “Создание переменных командной строки с помощью PATH”

    Хотя $1 обычно имеет особое значение (первый параметр передан скрипту / функции / и т. Д.), Вы действительно можете сохранить вывод команд в переменных.

     title=$(jq '.results[0].title' file.json) curl -i -H "Accept: application/html" -H "Content-Type: application/html" -X GET http://example.com/test/"$title" > test.txt 

    Первая часть запускает команды jq '.results[0].title' file.json и сохраняет вывод (независимо от того, что отображается на stdout в title переменной. Затем мы запускаем команду curl и расширяем переменную title как часть URL-адреса

    Linux и Unix - лучшая ОС в мире.