В этой статье мы хотим показать вам как мы можем увидеть текущую погоду в Терминале очень круто. Для этого мы будем использовать Открытая погода и его API для отображения погоды через наш Терминал.
Это довольно долгая процедура или, по крайней мере, не такая простая, как может показаться, поскольку мы должны клон ваш репозиторий GitHub, а затем добавьте его Ключ API и наконец запускаем программу. Кроме того, для самых любопытных это приложение работает с Медсестры, «графическая» библиотека для терминала, которую, очевидно, нам также придется установить, с помощью которой мы сможем реализовать графику на основе текстовых символов. Вот почему в Ubunlog мы обучаем вас шаг за шагом, чтобы вы могли сделать это как можно проще. Мы начали.
Зарегистрируйтесь и получите API-ключ
Первый шаг - зарегистрироваться на вашем Официальный Интернет чтобы позже получить ключ API (ключ APi). Для этого нам просто нужно ввести имя пользователя, адрес электронной почты и пароль, которые нам придется ввести дважды, как всегда, как показано на следующем изображении.
Затем система перейдет к предоставьте нам ключ API, как мы видим на следующем изображении. Как видите, мы можем указать название нашей компании (или место, где мы собираемся использовать этот виджет), а затем, как вы также увидите, ключ API уже будет нам предоставлен. Что ж, запишите пароль в надежном месте или просто не закрывайте браузер, потому что он нам понадобится позже.
Установка приложения
Теперь, когда у нас есть ключ API, мы можем перейти к установить приложение. Как мы уже говорили в начале статьи, чтобы установить его, мы должны клонировать его репозиторий GitHub в нужный каталог.
Чтобы использовать это приложение, вам потребуется предварительно установить ряд программ: Медсестры (графическая библиотека для Терминала), мерзавец (для управления репозиторием), bc (Калькулятор GNU), виться (для получения файлов из Интернета) и, наконец, GREP (для фильтрации выходных данных команд). Для этого выполняем следующую команду:
Суда apt-get обновления
sudo apt-get установить ncurses-bin git bc curl grep
После того, как все необходимые программы были установлены, мы можем теперь установить приложение. Для этого мы заходим в нашу личную папку y мы клонируем репозиторий GitHub приложения, чтобы получить его на наших ПК. То есть выполняем следующие две команды:
CD ~
клон git https://github.com/szantaii/bash-weather.git
Если вы присмотритесь, вы увидите, что каталог с именем / Баш-погода / Он содержит все сценарии Bash приложения. Что ж, следующим шагом может быть переместить контент из этого каталога в скрытый каталог с именем, например, .bash-weather (как вы уже знаете, ./ указывает, что это скрытый каталог). Чтобы выполнить этот шаг, просто запустите:
мв баш-погода / .bash-погода /
Наконец, мы переходим в созданный каталог:
cd ~ / .bash-weather /
Прямо сейчас, когда нам нужно сообщить приложению, какой у нас ключ API. Для этого открываем файл openweathermap.key и внутри копируем свой пароль. Следующее:
Последний шаг - дать основной скрипт разрешения на выполнениечерез чмод:
chmod + x bash-weather.sh
Наконец, теперь мы можем запустить программу просто с помощью:
Баш bash-weather.sh
Хорошо:
./баш-погода.ш
Это должно выглядеть примерно так:
Кроме того, программа, которую мы выполнили, имеет ряд параметров конфигурации, а именно:
- -k Позволяет указать API ключ из командной строки, если мы не включили его в файл openweathermap.key
- -h наш отображает экран справки.
- -t "название города" Вручную настройте город для поиска.
- -c код_ страны Вручную настройте страну на основе двухбуквенного кода (Аргентина - AR).
- -c код_ страны Вручную настройте страну на основе двухбуквенного кода (Аргентина - AR).
Итак, если вы запустите, например:
./bash-weather.sh -t "Бразилия" -f
Он показал бы нам климат Бразилии (по параметру -t «Бразилия»), а также показывал бы погоду цветами (по параметру -f).
Запуск программы из любого каталога
Правда в том, что приходиться каждый раз заходить в каталог немного раздражает. .bash-погода в нашей личной папке, а затем запускаем скрипт. Итак, вопрос: Можно ли запустить программу из любого каталога и с помощью простой команды?
Ответ очевиден - да. Как вы хорошо знаете, в Linux есть каталог с именем / bin / Он содержит большое количество разнообразных программ или скриптов, которые мы можем выполнить прямо из терминала. Что ж, идея такая напиши небольшой сценарий в баше, что мы запустить Open Weather, а затем сохраните этот сценарий в / bin /.
Мы также знаем, что сценарий, который мы запускаем для запуска приложения, называется Баш-погода.ш, находится в ~ / .bash-weather / (скрытый каталог внутри нашей личной папки, который мы можем увидеть, нажав Ctrl + H). Затем нам просто нужно создать сценарий, который перейти в этот каталоги затем пробег Баш-погода.ш. Кроме того, как мы уже сказали, этот сценарий провиденциально находится внутри каталога / binВ противном случае мы не сможем выполнить его из любого каталога в терминале.
Для этого мы должны создать пустой файл называется, например, my_climate. Я создам его на рабочем столе. Выполняем:
cd ~ / Рабочий стол
прикоснуться к my_climate
Далее открываем файл my_climate y мы копируем следующий контент:
#! / Bin / ш
cd ~ / .bash-weather /
./баш-погода.ш
Мы также можем копировать контент через терминал:
echo -e '#! / bin / sh \ n \ n cd ~ / .bash-weather / \ n \ n ./bash-weather.sh\n' | sudo tee ~ / Рабочий стол / my_climate
то мы перемещаем файл my_climate в папку / bin. Для этого нам нужны права суперпользователя, поэтому мы можем выполнить следующее:
sudo mv ~ / Рабочий стол / my_climate / bin
Он запросит у нас наш пароль, и файл, наконец, будет скопирован в / bin.
С этого момента, каждый раз, когда мы пишем my_climate в терминалеИз любого каталога будет запущена Open Weather, и мы точно увидим нужную погоду. Легко, правда?
Мы надеемся, что этот небольшой урок вам помог. Если у вас есть какие-либо вопросы или проблемы, оставьте их в разделе комментариев и в Ubunlog мы будем рады вам помочь 🙂
Здравствуйте, большое спасибо за этот отличный пост, для такого новичка, как я, это очень интересно. Кстати, какое у вас приложение, чтобы отображать всю информацию, которую вы видите справа, на скриншоте? Ставить процессоры, память, аккумулятор, сети и тд. Еще раз большое спасибо!