Manajemen Paket dan Repositori Perangkat Lunak
Distribusi Linux berbasis Debian mengandalkan repositori (database paket instalasi aplikasi dan paket peningkatan) untuk menjaga sistem operasi diperbarui dan juga untuk dengan mudah mengambil dan menginstal paket perangkat lunak baru. Lokasi repositori ini disimpan /etc/apt/sources.list
, namun sumber tambahan, biasanya unik untuk aplikasi tertentu dapat disimpan dalam /etc/apt/sources.list.d
direktori.
Ketika perintah pembaruan indeks paket apt-get update
dijalankan, sistem operasi Anda memeriksa dengan repositori paket ini untuk paket yang tersedia dan mendaftarkan perangkat lunak yang tersedia sebagai tersedia untuk sistem operasi Anda yang dapat Anda lanjutkan untuk menginstal menggunakan apt-get install <package>
perintah tradisional .
Contoh dari salah satu sumber perangkat lunak ini adalah:
deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ trusty main restricted
Penting bagi sumber-sumber ini untuk merujuk versi distribusi linux tertentu. Contohnya adalah trusty yang merupakan nama kode untuk Ubuntu 14.04. Anda dapat meminta OS Anda (berbasis debian) untuk detail lengkap dengan lsb_release -a
atau lsb_release -sc
yang berarti pendek dan nama kode .
Dalam pertanyaan Anda, bagian $(lsb_release -sc)
ditafsirkan dan hasil dari sistem operasi Anda dicetak ke dalam file sumber kustom ros-latest.list yang akan dibuat oleh perintah setelah dieksekusi.
Penerjemah bahasa perintah
The sh
perintah adalah shell Bourne . Ini adalah satu, di antara beberapa kerang tetapi dianggap sebagai standar lama dan umumnya yang Anda yakini ada. Ini juga biasa dilihat bash
di banyak skrip shell. Deklarasi itu menentukan shell untuk digunakan karena shell yang berbeda menggunakan sintaks yang berbeda.
Mengenai -c
bendera, mengutip man bash
:
Jika opsi -c hadir, maka perintah dibaca dari string. Jika ada argumen setelah string, mereka ditugaskan ke parameter posisi, dimulai dengan $ 0.
Segala sesuatu di dalam ''
dibaca sebagai string, Anda tidak perlu mencari cara untuk menghindari berbagai tanda kutip atau khawatir tentang shell menafsirkan sesuatu dengan cara yang salah.
tl; dr
Perintah mencetak deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main
ke file sumber kustom, menggantikan $(lsb_release -sc)
dengan nilai yang ditafsirkan.