המונח מעטפת המופעל על מערכות הפעלה מתייחס למתורגמן לפקודה של מערכת ההפעלה. באופן כללי, מדובר בממשק טקסט בעל ביצועים גבוהים המתבטא בצורת טרמינל (Console) ובעצם משרת 3 תחומי עבודה חשובים: ניהול מערכת ההפעלה, הפעלת יישומים ואינטראקציה איתם ומשמש כסביבה בסיסית. תִכנוּת. ו- Scripting מתייחס לטכניקה של עיצוב ויצירת סקריפטים באמצעות מעטפת.
סקריפטים של מעטפת שימושיים ביותר. מומלץ לכתוב את הצרכים שיש לנו ואז לערוך סקריפטים שעושים את העבודה הזו בשבילנו. ובמקרה הספציפי הזה נשתמש בו ליצירת קישורים (קיצורי דרך) של יישומים בתפריט ההתחלה ובשולחן העבודה של אפליקציות ניידות, מבצעות עצמאיות ומכילות עצמאיות.
מבוא
פעמים רבות הורדנו והתקנו יישומים הנמצאים במאגרים של הפצת GNU / Linux שלנו, או לא, כאשר הם מתקינים או מבצעים אותם, הם אינם יוצרים את קבצי ה- Desktop המתאימים. מאותו הדבר או במקרים הטובים ביותר הוא לא מציב אותו בנתיב הנכון כך שלאחר עדכון תפריט התחל הוא נקרא ומוצג ברשימת החבילות המותקנות של מערכת ההפעלה.
לכן, עלינו לפנות לשימוש ביישומים כגון "Alacarte" או "Menulibre" כדי ליצור באופן ידני את הקישור המתאים בתפריט התחל.
ולמרות שהיישומים הגרפיים האלה פשוטים מאוד לשימוש למטרה זו, זה אף פעם לא יותר מדי לדעת ליצור סקריפט משלנו לביצוע פעולה זו וכך לדעת מבפנים כיצד פעולה זו מתבצעת בתוך מערכת ההפעלה.
אם אינך מכיר את היצירה ו / או השימוש בקבצי Scripting של Shell אתה יכול קרא את זה פוסט קודם (מעטפת, באש ותסריטים) להתחיל ואז במידת הצורך לחקור כל הפרסומים בנושא.
יצירת התוכנית באמצעות Shell Scripting
נניח מטעמי מרחב שאנחנו כבר יודעים ליצור סקריפט מאפס, כלומר אנחנו כבר יודעים ליצור את הכותרת או החלקים הראשוניים של התסריט שלנו ונלך ישירות לתוכנו.
עם זאת, אם יש לך ספק לגבי זה, בדוק זאת הודעה קודמת (בנה את התוכנית שלך שלב אחר שלב באמצעות Shell Scripting - חלק 1) כדי להבהיר ספקות.
תוכן
#!/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
###############################################################################
תגובות
כפי שאתה יכול לנתח מהקוד והשמטת הכותרת, הסקריפט הבא מבצע את הפעולות הבאות באופן אוטומטי:
- וודא שאתה משמש כהרש שורש של משתמש-על או של משתמש-על.
- מחק קישורים קודמים ביישום שנוצרו על ידי גרסה קודמת.
- צור את קובץ. Desktop (קישור) החדש של היישום בתיקיה משלו בבית המשתמש.
- הקצה לבעל המשתמש הרשאה לקובץ שנוצר.
- תן לקובץ שנוצר את ההרשאות המתאימות לקריאה / כתיבה / ביצוע.
- צור את הקישורים הסמליים החדשים למסלולים הדרושים.
- עדכן את תפריט ההתחלה כדי להציג את קובץ שולחן העבודה שנוצר.
- בצע כתובת URL ספציפית ביישום שנוצר.
המלצה
מומלץ ליצור קובץ זה בתוך התיקיה המכילה את היישום / ההפעלה המדוברים עם הסמל המתאים (תמונה / לוגו) בתוכו וכי התיקייה האמורה ממוקמת בנתיב. /opt
במקום המסלול `echo $HOME`/mi_app/
כלומר, /home/mi_usuario/mi_app
.
אני מקווה שהתסריט הקטן הזה מאפשר לך לפתור את הצרכים שלך בנושא זה בנושא זה! עד לכתבה הבאה.
בזמן שאני משאיר לך את זה קישור באתר הרשמי של Gnome בנושא והסרטון הזה:
תודה רבה לך על כל המאמרים שלך.
שאלה אחת: כיצד, אם אינך שורש, תוכל לבקש את הסיסמה המציגה כוכביות כדי להמשיך בביצוע עם ההרשאות המתאימות?
אתה יכול ליצור ממשק עם דו-שיח ולהחיל את המאפיין של הצפנת המפתח בתיבת בקשת הסיסמה! אני זוכר היטב כי מאפיין זה קיים בדיאלוג.
בפוסט הקודם הזה, מישהו עשה משהו דומה אך בצורה גרפית, אך הקבצים המצורפים, כלומר הקוד המשמש כבר אינו זמין: https://blog.desdelinux.net/script-avanzado-en-bash-bashmd5-para-proteger-algo-explicacion-detallada/
תודה, יהיה נחמד שלא תצטרך לעזוב את סביבת הבאש במקרה שהיא פועלת ללא ממשק גרפי, במקרה זה לא משנה גם אם אין כוכביות או משהו כזה, שהיא מבקשת את המפתח ולא מופיע טקסט . אממ, אני מוצא את זה http://www.tormentadebits.com/2012/08/scripts-bash-introducir-password-sin-mostrarlo-en-pantalla.html