使用Shell腳本逐步構建程序-第7部分

再次歡迎您上一課 課程(教程) 線上 “使用Shell腳本逐步構建程序。” 在上一課之前,我們已經介紹瞭如何基於以下內容創建程序的以下模塊: 使用Bash Shell的Shell腳本 作為執行解釋器:

Shell Scripting

在這個新版本中, 第七(7),我們將研究以下模塊:

編碼語言配置模塊

該模塊將允許您 建立環境 清潔 en 編碼器 - 8在 GNU操作系統運行時環境/Linux,使您可以向程序指示所需的語言。

這是因為它們多次發生 問題 的處理 字符 不是ASCII輸入 我們的 程序,這使我們很多時候無法正確顯示在屏幕上顯示或輸入或由同一程序提取(讀取)的消息.

因此,p金剛鸚鵡 有效地工作 隨著數據 文字, 環境 必須 配置正確, 這是很多 更容易調試 一個問題 你有 編碼問題 是的你可以 相信 您的終端 正確顯示 正確 UTF-8.這個模塊可以幫助我們實現這一目標。

其內容如下:


################################################################################
# INICIO DEL MODULO DE CONFIGURACIÓN DEL LENGUAJE DE CODIFICACIÓN DEL LPI-SB
################################################################################

read -p "Introduzca el lenguaje de Codificación de Caracteres de su Sistema Operativo (1 = es_VE / 2 = es_ES / 3 = en_EN): " T_LANG

if [ "$T_LANG" = "1" ]; then
   
   SET_LANG=es_VE

   echo -e '\a'

   echo ""
   echo ""
   echo "#--------------------------------------------------------------#"
   echo "# LA CODIFICACIÓN POR USTED INDICADA FUE: $SET_LANG             "
   echo "#--------------------------------------------------------------#"
   echo ""
   echo ""

   sleep 3
   clear

   elif [ "$T_LANG" = "2" ]; then
    
    SET_LANG=es_ES

   echo -e '\a'

   echo ""
   echo ""
   echo "#--------------------------------------------------------------#"
   echo "# LA CODIFICACIÓN POR USTED INDICADA FUE: $SET_LANG             "
   echo "#--------------------------------------------------------------#"
   echo ""
   echo ""

   sleep 3
   clear

   elif [ "$T_LANG" = "3" ]; then
     
     SET_LANG=en_US

   echo -e '\a'

   echo ""
   echo ""
   echo "#--------------------------------------------------------------#"
   echo "# LA ARQUITECTURA POR USTED INDICADA FUE: $SET_LANG             "
   echo "#--------------------------------------------------------------#"
   echo ""
   echo ""

   sleep 3
   clear

else

   SET_LANG=es_VE

   echo -e '\a'

   echo ""
   echo ""
   echo "#--------------------------------------------------------------#"
   echo "# LA ARQUITECTURA PREDETERMINADA CONFIGURADA FUE: $SET_LANG     "
   echo "#--------------------------------------------------------------#"
   echo ""
   echo ""

   sleep 3
   clear

fi

export LC_ALL=$SET_LANG.UTF-8
export LANG=$SET_LANG.UTF-8
export LANGUAGE=$SET_LANG.UTF-8

locale

sleep 3
clear

read -p "SI DESEA CANCELAR PRESIONE CUALQUIERA DE LOS SIGUIENTES CARACTERES: "s" "S" "y" "Y". DE LO CONTRARIO PRESIONE CUALQUIER OTRA TECLA! : " op

if [[ $op == "y" || $op == "Y" || $op == "s" || $op == "S" ]];

 then

   sleep 3 ; clear ; exit 0

 else

   sleep 3 ; clear ; read -p "EL SCRIPT LPI-SB PROCEDERA HA CONTINUAR, PRESIONE CUALQUIER TECLA PARA CONTINUAR..." && sleep 3 ; clear

fi

################################################################################
# FINAL DEL MODULO DE CONFIGURACIÓN DEL LENGUAJE DE CODIFICACIÓN DEL LPI-SB
################################################################################

正如我們在閱讀所述模塊的代碼時可以理解的一樣:

  • 它向我們詢問以下消息“輸入操作系統的字符編碼語言(1 = es_VE / 2 = es_ES / 3 = en_EN):”,向程序指示我們要為其設置語言的選項(語言)。編碼語言。
  • 然後根據用戶的選擇,程序在屏幕上向他顯示一條消息,提示“您指示的編碼是:+ your_selection”。 如果選擇的不是1、2或3,則程序默認使用Spanish_Venezolano(es_VE)語言配置UTF-8環境。

它通過使用命令命令來完成所有這些操作:

導出LC_ALL = $ SET_LANG.UTF-8
導出語言= $ SET_LANG.UTF-8
導出語言= $ SET_LANG.UTF-8

通過執行以下命令,它將結果顯示在屏幕上:

當地

最後向用戶顯示警告消息:

如果要立即取消該過程,請按以下任何字符:“ s”,“ S”和“ Y”。 否則,請按其他任何鍵繼續操作,請記住,使用不正確的體系結構可能會嚴重損害LPI-SB的正常工作!

如果用戶按了一些正確的字符,程序將關閉,否則它將發出以下消息並繼續其操作:

LPI-SB腳本將繼續進行,請按任意鍵以繼續...

=============

推薦讀物:

GNU,LINUX,GNU / LINUX,免費軟件和開源!

全部還是分開?

  • 什麼是GNU?
    GNU 手段 GNU是 Not U尼克斯,並指 世界自由軟件計劃,開始 1984年XNUMX月理查德·M·斯托曼, 被稱為 GNU項目。 GNU 明確指 自由軟件操作系統。 的發展 GNU哲學 允許使用不帶破壞用戶自由,安全和隱私的軟件的計算機。 綜上所述, GNU 涵蓋 Unix類操作系統,這是一個 許多軟件的組合:程序,應用程序,庫,開發工具,甚至遊戲。 許多 GNU程序 在...的主持下出版 GNU項目 我們稱他們為 GNU軟件包.

有關更多信息 GNU 你可以開始 在這裡。

  • 什麼是Linux?
    Linux 作為一個概念,它在廣泛意義上是指一種類型的 平台。 但是,嚴格而明確地說,Linux是指內核類型。 有一種非常用在 操作系統 根據 GNU哲學。 一個的內核 平台是指其內核,即負責管理內存資源,允許操縱文件系統,管理網絡資源等等的元素(模塊)。 簡而言之,e
    l 內核(核心) 它就像一個主要的或重要的器官 操作系統 因為他負責 軟件(軟件) Y EL 硬件(硬件) 您的計算機(計算機)可以協同工作,因為管理所有正在運行的程序和進程的內存,運行程序和進程所用的處理時間以及管理外圍設備訪問和其他元素都是有效管理計算機的一切。

P有關更多信息 LINUX 你可以開始 在這裡。

  • 什麼是GNU / Linux?
    GNU / Linux的 是使Linux內核完整的整套軟件(應用程序/程序) 平台. GNU 這就是使Linux自由開放的原因。 和整個a 平台 與Unix兼容。 區別於其他生態系統的兩個顯著特徵 操作系統 它們是:第一,它是免費的,這意味著我們不必為使用軟件而向軟件開發公司支付某種類型的許可費用,第二,該系統隨附源代碼,也就是說,由於它是根據 GNU通用公共許可證,源代碼必須始終在手邊(可訪問),並且任何更改或結果產品都必須具有此許可證。

P有關更多信息 LINUX 你可以開始 在這裡。

  • 什麼是自由軟件?
    簡單來說就是每個人 軟件(應用程序/程序) 其使用和發行許可證被稱為 GPL 或基於此,由 GNU項目. GPL許可證 促進並確保四(4)個基本自由:
    使用自由,學習自由,修改自由和重新分配自由。 因此,你n程序是 免費軟件 是,只有是,用戶擁有所有這些自由。

有關的更多信息 免費軟件 你可以開始 在這裡。

  • 什麼是開源?
    這個概念在90年代後期開始使用,並且從 免費軟件,強調使用和開發該產品所產生的技術和經濟利益。 開源 Y EL 免費軟件卻沒有過多地關注道德爭論, 免費軟件 帶來。 在幾乎所有的軟件中, 開源計劃 被公認為 免費軟件,由運動和社區 免費軟件, 因此,幾乎兩個概念經常一起使用多次來引用同一軟件。

有關的更多信息 開源及其與免費軟件的差異 你可以開始 這裡 在這裡。

================

到目前為止,我希望您一直喜歡Shell Scripting類和“推薦讀物”! 直到下一堂課。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。