Bagaimana saya dapat menemukan file * .desktop?

85

Sepengetahuan saya, semua pintasan di Unity Launcher memiliki file * .desktop yang sesuai. Saya punya satu jalan pintas (untuk skrooge ) yang tidak memiliki ikon. Bagaimana saya dapat menemukan file * .desktop yang sesuai dengan pintasan ini sehingga saya dapat menambahkan ikon?

KOVIKO
sumber

Jawaban:

113

Mungkin duduk /usr/share/applications/tetapi jika Anda ingin menemukan setiap .desktopfile di sistem jalankan ini:

find / -name '*.desktop'

atau

sudo updatedb
locate *.desktop

Untuk menemukan file dengan "skrooge" di jalur atau namanya, tambahkan grep ke perintah:

locate *.desktop | grep -iR "skrooge"
Oli
sumber
21
locate -i "*skrooge*.desktop". Meskipun ada terutama tiga tempat persatuan akan mencari file desktop. ~/.local/share/applications, /usr/local/share/applicationsdan /usr/share/applications. Jika ada file desktop untuk perintah yang sama di banyak tempat, itu akan menggunakan paling kiri dari tiga yang saya daftarkan.
geirha
Ditampilkan sebagai /usr/share/applications/kde4/skrooge.desktop. Terima kasih. :)
KOVIKO
33

Sistem menyimpan file .desktop di /usr/share/applications/. Sayangnya, jika Anda membuka folder itu di nautilus, file .desktop muncul dengan ikon yang ditentukan dalam file dan dengan nama file yang dipanggil di dalam file. Anda juga tidak akan diizinkan untuk mengedit file-file ini dengan mengkliknya dan memilih edit.

Untuk mengedit file-file ini, Anda perlu membuka folder itu di dalam jendela terminal. Melakukan lsperintah akan menampilkan semua file .desktop dengan nama sebenarnya. Saat Anda menemukan .desktop yang ingin Anda ubah, jalankan gksudo gedit {file-name}.desktop.

Ini adalah praktik normal untuk menyimpan file .desktop yang Anda buat atau edit di folder rumah Anda ~/.local/share/applications.

frago
sumber
Menjalankan dari terminal bisa jadi lebih mudah bagi sebagian orang, tetapi juga dimungkinkan untuk menyeret dari nautilus ke gedit atau editor teks lainnya.
Jon Hanna
apa gunanya direktori "~ / .local / share / aplikasi"? File di sana sepertinya tidak digunakan, bukan saya tidak bisa menambahkannya sebagai "jalan pintas" ke Unity.
Malachiasz
2
@Malachiasz Sebenarnya, file * .desktop dari ~/.local/share/applicationsdimuat ulang saat sesi dimulai ulang. Jadi, keluar dan masuk kembali. Perhatikan bahwa ini khusus untuk pengguna itu.
akshay2000
Saya juga menemukan T&J ini di sini di situs berguna: Cara memaksa Unity memuat ulang ~ / .local / share / application /
hakre
8

Beberapa detail tambahan untuk melengkapi jawaban lainnya:

Biasanya, .desktopfile untuk paket akan berlokasi di /usr/share/applications.

Jika mau, Anda dapat menyalin ~/.local/share/applicationsdan mengeditnya di sana tanpa memerlukan sudo . Item dalam ~/.local/share/applicationsakan menimpa item yang cocok di /usr/share/applicationsdan /usr/local/share/applications, tetapi hanya dapat dilihat oleh pengguna Anda.

Atau, Anda dapat menempatkan salinan yang telah diedit di /usr/local/share/applicationstempat yang akan menimpa apa pun /usr/share/applicationssekaligus terlihat oleh seluruh sistem.

Perhatikan bahwa Anda tidak boleh mengedit .desktopfile /usr/share/applicationssecara langsung; setiap perubahan yang Anda lakukan akan ditimpa secara otomatis ketika aplikasi diperbarui oleh manajer paket.

Diekstrak dari sini

Sopalajo de Arrierez
sumber
+1, jawaban paling lengkap dari semuanya
Jon Bentley