1、簡化操作。一般的軟體安裝過程,如果想要精簡步驟,我們一般會將需要在命令列中輸入的命令寫成乙個指令碼,同時將安裝介質準備好。我們將指令碼和安裝介質上傳到生產環境,然後通過執行指令碼來完成安裝。如果能夠將這兩個檔案合併為乙個可執行檔案,那安裝的過程就更簡單明瞭。
2、**保護。對於一段指令碼,提供給使用者使用,但是不希望使用者看到指令碼的內容,可以通過將指令碼發布為.bin的形式。這樣使用者在環境中可以執行、安裝,但是無法看到裡面的內容,也無法修改,從而達到保護指令碼內容的目的。
1、本文以在redhat系統中安裝ftp命令為例說明,如何將安裝指令碼和安裝介質整合成乙個檔案,簡化操作。
首先,編寫乙個指令碼,包含安裝的命令。
#!/bin/sh
echo "hello world"
dir_installation=/root/create_bin
sed -n -e '1,/^exit 0$/!p' $0 > "$/ftp-0.17-54.el6.x86_64.rpm" 2>/dev/null
cd $dir_installation
rpm -ivh ftp-0.17-54.el6.x86_64.rpm
rm ftp-0.17-54.el6.x86_64.rpm
exit 0
注意,這個指令碼的關鍵在於sed
,他會把exit 0後面的內容提取出來,另存為rpm包,然後執行安裝,安裝完成後刪掉rpm。
最後,我們用cat
命令將指令碼和安裝包生成乙個新的檔案。
這時,如果用file
命令檢視install-rpm.bin檔案,可以發現它的型別還是文字型別,用vim編輯器開啟,還是可以看到指令碼內容的,也可進行修改。
2、對於第二個隱藏**內容的需求,有一款工具叫做 shc ,可以用它來將指令碼程式設計二進位制檔案。
wget
tar xvfz shc-3.8.9b.tgz
cd shc-3.8.9b
make
./shc -v
shc parse(-f): no source file specified
shc usage: shc [-e date] [-m addr] [-i iopt] [-x cmnd] [-l lopt] [-rvdtcah] -f script
./shc -f install-rpm.bin
本文為作者原創,如果您覺得本文對您有幫助,請隨意打賞,您的支援將鼓勵我繼續創作。
Linux下建立可執行bin安裝檔案
1 簡化操作。一般的軟體安裝過程,如果想要精簡步驟,我們一般會將需要在命令列中輸入的命令寫成乙個指令碼,同時將安裝介質準備好。我們將指令碼和安裝介質上傳到生產環境,然後通過執行指令碼來完成安裝。如果能夠將這兩個檔案合併為乙個可執行檔案,那安裝的過程就更簡單明瞭。2 保護。對於一段指令碼,提供給使用者...
Linux下執行可執行檔案
我們通常會為計算機配置環境變數 path,echo path 檢視當前的環境變數包含的目錄。這些目錄下的可執行檔案就無需輸入完整路徑來執行,直接輸入命令就行,我們shell中常使用的一些linux命令,例如man,cat等的目錄都被包含在該path目錄中,所以直接在shell中輸入這些命令就可以。即...
建立linux可執行程式
1.在vendor rockchip目錄下建立工程目錄loopread 2.目錄結構如下 loopread.mk sepolicy file contexts loopread.te src android.mk etc init.loopread.rc loopread.c3.下面逐步解讀工程檔案...