tar 打包是一個很常見的操做,可是當打了一個包卻又不想讓別人看到裏面的小祕密的時候就能夠使用加密的方法進行打包。
shell
如下是一個腳本實現的加密打包和解密的shell腳本:bash
cat tar_password.sh加密
1 #!/bin/bash 2 read -p "你的密碼是: " PAS_WD 3 case $1 in 4 C) 5 tar -zcvf - ${2}|openssl des3 -salt -k ${PAS_WD} | dd of=${2}.des3 6 #tar -zcvf - {DIR}|openssl des3 -salt -k password | dd of={DIR}.des3 7 #會生成一個 {DIR}.des3的文件 8 echo "password: ${PAS_WD}" >> $2_password 9 ;; 10 X) 11 dd if=${2} |openssl des3 -d -k ${PAS_WD}|tar zxf - 12 #dd if=config.des3 |openssl des3 -d -k password|tar zxf - 13 ;; 14 *) 15 echo "help" 16 echo "sh tar_password.sh C [dir]" 17 echo "sh tar_password.sh X [dir]" 18 ;; 19 esac
假設想要打包的文件(文件夾)名字爲test
打包:
sh tar_password.sh C testspa
(會提示你設置密碼!!!)code
將會生成 test.des3 (壓縮包)和 test_password(密碼文件)blog
解包:ssl
sh tar_password.sh X test.des3openssl
(會提示你設置密碼!!!)class
將會解壓出 test (文件/目錄)test