Mari kita jabarkan.
Pertama-tama, sedikit catatan tentang cara apt-get install
(dan sebagian besar apt-get
argumen lain juga) bekerja:
Anda dapat memasukkan beberapa nama paket:
sudo apt-get install foobar spamegg
Nama-nama paket sebenarnya adalah man 7 regex
pola Ekspresi Reguler Diperpanjang (ERE) (Periksa ) sehingga nama paket foo.bar
berarti nama paket apa pun yang memiliki substring yang dimulai dengan foo
dan diakhiri dengan bar
karakter tunggal antara foo
dan bar
. Kemungkinan f.*r
berarti setiap nama paket yang berisi substring yang memiliki f
dan r
dengan sejumlah karakter yaitu apa pun di antaranya. Untuk melakukan pencocokan seluruh nama paket, gunakan token awal dan akhir mis ^foo.bar$
. Jika Anda ingin token Regex apa pun diperlakukan secara harfiah, maka Anda harus melarikan diri dari token dengan \
misalnya untuk memperlakukan foo.bar
secara harfiah, Anda perlu:
sudo apt-get install 'foo\.bar'
Di sini kutip tunggal adalah untuk mencegah interpretasi shell dari pola sebagai pola globbing, tidak perlu dalam kasus ini tetapi akan diperlukan misalnya untuk pola foo.*bar
jika Anda memiliki file di direktori saat ini bernama misalnya foo.bar
.
Ada tangkapan pada pertimbangan nama paket. Jika ada paket yang cocok dengan polanya, polanya akan diperlakukan secara literal dan tidak ada interpretasi Regex yang akan dilakukan. Misalnya, untuk pola paket g++
, itu akan cocok dengan paket g++
secara harfiah terlepas dari token Regex +
. Jika tidak ada paket bernama g++
dalam repositori yang ditentukan, itu akan diperlakukan sebagai pola ERE.
Sekarang, Anda telah memberikan perintah:
sudo apt-get install g++ 5.0
Ini berarti:
Anda ingin menginstal dua pola paket yang disediakan yaitu g++
dan5.0
g++
cocok dengan paket meta literal g++
seperti yang disebutkan di atas
Bagian yang tersisa 5.0
,, memiliki token Regex, .
yaitu setiap karakter tunggal. Jadi ini akan cocok dengan nama paket apa pun yang berisi 5<any_character>0
. Jadi semua paket yang memiliki kecocokan telah dipilih untuk diinstal dan mungkin virtualbox-5.0
juga telah dipilih dalam proses.
Agaknya Anda ingin menginstal g++
versi 5
, jadi melakukan hal berikut akan dilakukan ( sudah disebutkan dalam jawaban ini ); Paket meta g++-5
,, akan merujuk pada paket minor dirilis g++
versi 5 terbaru yang tersedia :
sudo apt-get install g++-5
Untuk mencari paket apa pun, dalam repositori yang dikonfigurasi, gunakan apt-cache
(gunakan seperti ERE apt-get
):
apt-cache search 'g\+\+-[0-9]+'
Jika Anda tidak ingin Regex-ify itu, gunakan less
untuk menggulir ke bawah daftar yang agak besar:
apt-cache search g++ | less
Juga sebelum memasang apa pun yang Anda tidak yakin, jangan gunakan opsi -y
( --assume-yes
) dan ujilah terlebih dahulu dengan -s
( --simulate
/ --dry-run
):
sudo apt-get install --dry-run foobar
apt-get
akan meminta konfirmasi dari pengguna, jadi Anda bisa memasukkann
dan menghindari menginstal VirtualBox ... Juga repositori Ubuntu diperiksa, jadi seharusnya tidak ada paket malware yang dapat Anda instal di tempat pertama. Jika Anda menambahkan PPA acak, ini mungkin terjadi tetapi itu karena Anda memberi tahu Ubuntu untuk menginstal aplikasi dari sumber yang tidak terpercaya.