您好,登錄后才能下訂單哦!
小編給大家分享一下從shell腳本創建二進制文件的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
在使用Linux系統時,我們都會使用許多命令。大多數命令以二進制格式在/bin、/sbin、/usr/bin、/usr/sbin等目錄中可用。作為系統管理員,我們編寫了許多shell腳本來完成一些任務或使它們自動化。
本文將介紹創建shell腳本的二進制文件,因為沒有人可以看到腳本的源代碼,我們可以將它們用作命令。要從腳本創建二進制文件,我們使用SHC編譯器。
請按照以下步驟執行此操作。
步驟1:先決條件
首先,需要為SHC編譯器安裝所需的包。
對于Ubuntu,Debian和LinuxMint
$ sudo apt-get install libc6-dev
對于CentOS,RHEL和Fedora
$ sudo yum install glibc-devel
步驟2:下載并安裝SHC
從SHC編譯器的官方網頁或使用以下命令下載最新的源代碼,并在您的系統上提取。
$ cd / usr / src $ wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz $ sudo tar xzf shc-3.8.9.tgz
現在編譯系統上的SHC源代碼并使用以下命令安裝它。
$ cd shc-3.8.9 $ make $ make install
步驟3:創建shell腳本
讓我們根據需求創建一個shell腳本,或者跳過這個步驟(如果已經創建了)。對于本文,我們已經創建了下面的示例腳本,它添加了命令行參數上給定的整數值,并顯示了它們的總和。
vim script.sh
#!/bin/bash total=0 for i in $@; do if [ ! -z "${i##[0-9]*}" ]; then echo "Please enter numeric only" exit 1 fi total=$(($total + $i)) done if [ $total -eq 0 ]; then echo "Plesae execute script like: $0 10 20 30" exit 0 fi echo $total
步驟4:創建腳本的二進制文件
在這個階段,我們已經安裝了SHC編譯器,并有一個名為script.sh的shell腳本。使用下面的命令創建腳本的二進制文件。
$ shc -T -f script.sh
上面的命令將在當前目錄中創建兩個文件。其中一個是script.sh.x.c,它是腳本中的C語言格式。第二個是script.sh.x,它將采用二進制格式。
步驟5:測試二進制腳本
如果試圖打開二進制格式的腳本,將看到它不是可讀的格式。
現在將該腳本移到/usr/bin目錄下,以便在系統中的任何位置使用。同時從文件名中刪除.sh.x。因此,它將以簡單的名稱實現。同時為所有人設置執行權限
$ mv script.sh.x / usr / bin / script $ chmod + x / usr / bin / script
現在從系統中的任何位置輸入命令'script'。將看到與shell腳本相同的結果。
$ script 10 20 30 60
以上是從shell腳本創建二進制文件的方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。