Istilah Shell yang diterapkan pada Sistem Operasi mengacu pada penerjemah perintah dari Sistem Operasi. Secara umum, ini adalah antarmuka teks berkinerja tinggi yang memanifestasikan dirinya dalam bentuk Terminal (Konsol) dan yang pada dasarnya melayani 3 bidang kerja penting: Mengelola Sistem Operasi, Menjalankan aplikasi dan berinteraksi dengannya, dan berfungsi sebagai dasar pemrograman lingkungan. Dan Scripting mengacu pada teknik merancang dan membuat Skrip menggunakan Shell.
Skrip Shell sangat berguna. Merupakan ide yang baik untuk menulis kebutuhan yang kita miliki dan kemudian mengedit skrip yang melakukan pekerjaan ini untuk kita. Dan dalam kasus khusus ini kami akan menggunakannya untuk membuat tautan aplikasi (pintasan) di menu mulai dan desktop aplikasi portabel, aplikasi mandiri, dan mandiri.
Pengantar
Seringkali kami mengunduh dan menginstal aplikasi yang, berada atau tidak di repositori Distribusi GNU / Linux kami, ketika menginstal atau menjalankannya, tidak membuat file .desktop masing-masing. dari yang sama atau dalam kasus terbaik itu tidak menempatkannya di jalur yang benar sehingga setelah memperbarui Start Menu itu dibaca dan ditampilkan dalam daftar paket yang diinstal dari Sistem Operasi.
Oleh karena itu, kita harus menarik penggunaan aplikasi seperti "Alacarte" atau "Menulibre" untuk membuat link terkait secara manual di Start Menu.
Dan meskipun aplikasi grafik ini sangat mudah digunakan untuk tujuan ini, tidak banyak yang perlu diketahui membuat skrip kita sendiri untuk melakukan operasi ini dan dengan demikian mengetahui dari dalam bagaimana operasi ini dilakukan di dalam Sistem Operasi.
Jika Anda tidak terbiasa dengan pembuatan dan / atau penggunaan file Shell Scripting Anda bisa Baca ini kiriman sebelumnya (Shell, Bash and Scripts) untuk memulai dan kemudian jika perlu menjelajah semua publikasi tentang subjek.
Membuat program menggunakan Shell Scripting
Kita asumsikan karena alasan space kita sudah tahu cara membuat script dari awal, yaitu kita sudah tahu cara membuat header atau bagian awal dari script kita dan kita akan langsung masuk ke isinya.
Namun, jika Anda ragu, periksa ini posting sebelumnya (Buat program Anda selangkah demi selangkah menggunakan Shell Scripting - Bagian 1) untuk memperjelas keraguan.
kadar
#!/usr/bin/env bash
set -eou pipefail
IFS=$'\n\t'
setterm --reset
# NOMBRE: MI-APP LINUX POST INSTALL - SCRIPT BICENTENARIO (MIAPP-LPI-SB)
# VERSIÓN: 1.0+0
# TIPO DE PROGRAMA: SISTEMA EXPERTO
# FUNCIÓN: ASISTENTE TECNICO PARA S.O. GNU/LINUX BASADOS EN DEBIAN
# NOMBRE CODIGO: MIAPP (MIAPP-LPI-SB 1.0+0)
# PAIS ORIGEN: Mi país
# CREADO POR: Mi Nombre
# LICENCIA: Licencia Pública General de GNU 3.
###############################################################################
# INICIO DEL MODULO DE VALIDACION PERMISO DE SUPERUSUARIO (ROOT) SOBRE EL MIAPP-LPI-SB
###############################################################################
# ESTE MODULO VALIDA QUE SOLO EL SUPERUSUARIO (USUARIO ROOT) PUEDA EJECUTAR
# EL LINUX POST INSTALL - SCRIPT BICENTENARIO.
clear
setterm -background red
if [[ "$(id -u)" != "0" ]]; then
echo "ESTE SCRIPT DEBE SER EJECUTADO COMO ROOT"
sleep 3
clear
else
echo "ESTE SCRIPT SERA EJECUTADO COMO SUPERUSUARIO (ROOT)"
sleep 3
clear
fi
###############################################################################
# FINAL DEL MODULO DE VALIDACION PERMISO DE SUPERUSUARIO (ROOT) SOBRE EL MIAPP-LPI-SB
###############################################################################
###############################################################################
# INICIO DEL MODULO DE ORDENES DE COMANDO DE POST INSTALACIÓN
###############################################################################
rm -f $HOME/mi_app/mi_app.desktop
rm -f $HOME/.local/share/applications/mi_app.desktop
rm -f $HOME/Desktop/mi_app.desktop
rm -f $HOME/Escritorio/mi_app.desktop
rm -f /usr/share/applications/mi_app.desktop
###############################################################################
echo "
[Desktop Entry]
Name=My Applicattions
GenericName=My Applicattions
GenericName[es]=Mi Aplicación
Comment=Mi Aplicación
Exec=/opt/mi_app/mi_app
Icon=`echo $HOME`/mi_app/icono_app.png
Terminal=false
Type=Application
Encoding=UTF-8
Categories=Network;Application;
MimeType=x-scheme-handler/mozilla;
X-KDE-Protocols=mozilla
" > `echo $HOME`/mi_app/mi_app.desktop
chown $USER:$USER -R `echo $HOME`/mi_app/mi_app.desktop
chmod 755 `echo $HOME`/mi_app/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop $HOME/.local/share/applications/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop $HOME/Desktop/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop $HOME/Escritorio/mi_app.desktop
ln -s `echo $HOME`/mi_app/mi_app.desktop /usr/share/applications/mi_app.desktop
update-menus
###############################################################################
clear
su - $USER -c "xdg-open 'https://www.mi-app.com/'"
clear
echo ''
echo ''
echo '#------------------------------------------------------------------#'
echo '# GRACIAS POR USAR MI-APP LINUX POST INSTALL #'
echo '#------------------------------------------------------------------#'
echo ''
echo ''
sleep 3
###############################################################################
# FINAL DEL MODULO DE ORDENES DE COMANDO DE POST INSTALACIÓN
###############################################################################
Komentar
Karena Anda dapat menganalisis dari kode dan menghilangkan header, skrip berikut melakukan operasi berikut secara otomatis:
- Validasi bahwa Anda sedang digunakan sebagai izin root pengguna super atau izin root pengguna super.
- Hapus tautan sebelumnya pada aplikasi yang telah dibuat oleh versi sebelumnya.
- Buat file .desktop baru (tautan) dari aplikasi di foldernya sendiri di dalam rumah pengguna.
- Tetapkan izin pemilik pengguna ke file yang dibuat.
- Tetapkan file yang dibuat izin baca / tulis / eksekusi yang sesuai.
- Buat tautan simbolis baru ke rute yang diperlukan.
- Perbarui menu mulai untuk menampilkan file .desktop yang dibuat.
- Jalankan URL tertentu pada aplikasi yang dibuat.
Rekomendasi
Direkomendasikan agar file ini dibuat dalam folder yang berisi aplikasi / executable yang dimaksud dengan ikon masing-masing (gambar / logo) yang ditentukan di dalamnya dan folder tersebut terletak di jalur /opt
alih-alih rute `echo $HOME`/mi_app/
itu adalah, /home/mi_usuario/mi_app
.
Saya harap skrip kecil ini memungkinkan Anda untuk memenuhi kebutuhan Anda dalam hal ini! Sampai artikel selanjutnya.
Sementara aku meninggalkanmu ini tautan di situs web resmi Gnome tentang topik tersebut dan video ini:
Terima kasih banyak untuk ini dan semua artikel Anda.
Satu pertanyaan: Bagaimana, jika Anda bukan root, dapatkah Anda meminta kata sandi yang bertanda bintang untuk melanjutkan eksekusi dengan izin yang sesuai?
Anda dapat membuat antarmuka dengan dialog dan menerapkan properti mengenkripsi kunci ke kotak permintaan kata sandi! Saya ingat betul bahwa properti ini ada dalam dialog.
Di posting sebelumnya ini, seseorang melakukan sesuatu yang serupa tetapi secara grafis tetapi file terlampir, yaitu kode yang digunakan tidak lagi tersedia: https://blog.desdelinux.net/script-avanzado-en-bash-bashmd5-para-proteger-algo-explicacion-detallada/
Terima kasih, alangkah baiknya untuk tidak meninggalkan lingkungan bash jika ia berjalan tanpa antarmuka grafis, dalam hal ini tidak masalah meskipun tidak ada tanda bintang atau apa pun, ia meminta kunci dan tidak ada teks yang muncul. Ummm, saya menemukannya di http://www.tormentadebits.com/2012/08/scripts-bash-introducir-password-sin-mostrarlo-en-pantalla.html