Показать статистику
0 голосов
от (2.3тыс. баллов)

 Вопрос как именно применяются эти команды?

1.9тыс. просмотров 1 ответов

1 Ответ

0 голосов
от (26.4тыс. баллов)

CURL является инструментом командной строки. Это  также еще и библиотека, с помощью которой передаются данные с URL

Он дает возможность вам скачивать файлы с (веб) сервера.

Вы можете получить тот же результат, открыв а затем сохранив отображаемый файл на диск.

SH

Запуск sh дает возможность открыть новую оболочку. Здесь он применяется для выполнения списка команд через -c флаг в новой оболочке с привилегиями root ( sudo ).

sh -c  

Эта часть необходима из-за перенаправления ( > /etc/apt/sources.list.d/atom.list). Так как для записи в файл /etc/apt/sources.list.d/atom.list нужны права root, вы не можете просто выполнить sudo echo ... > file, потому что перенаправление не «наследует» привилегии от sudo части. Вы должны обернуть все echo+  в его в новом экземпляре оболочки. Это несколько эквивалентно этой последовательности шагов:

  • Используем
 sudo sh

 чтобы открыть новую оболочку с привилегиями root

echo "deb [arch=amd64] any main" > /etc/apt/sources.list.d/atom.list

 записать новую строку в atom.list файл

exit

 возвращает обычной пользовательской оболочке.

Например 

$ curl -sL sudo apt-key add -

Это на самом деле две команды.

curl -sL загружает ключ GPG из PackageCLoud для хранилища Atom Editor.

sudo apt-key add

 добавляет его, apt чтобы он мог распознавать и проверять подписи GPG репозитория на пакетах.

$ sudo sh -c 'echo "deb [arch=amd64] any main" > /etc/apt/sources.list.d/atom.list'

Проще, если мы разделим его на три составляющие части.

sudo выполняет sh команду как суперпользователь.

sh -c указывает на выполнение определенной команды в sh оболочке.

'echo "deb [arch=amd64] any main" > /etc/apt/sources.list.d/atom.list'

 это запускаемая команда

sh -c создает отдельную запись в данном репо, 

/etc/apt/sources.list.d/atom.list

для того, чтобы при sudo apt update ее выполнении проверять этот репозиторий на наличие данных пакета.

...