本篇 ShengYu 介紹 Linux base64 用法與範例,
以下的 Linux base64 用法與範例將分為這幾部分,
- Linux base64 encode 編碼
- Linux base64 decode 解碼
- Linux base64 encode 編碼並輸出至檔案
- Linux base64 從檔案解碼 decode
- 為什麼 linux base64 跟 python base64 的結果輸出不一樣?
那我們開始吧!
Linux base64 encode 編碼
這邊示範用 Linux base64 編碼一段文字並輸出在標準輸出上,1
echo "Hello World" | base64
標準輸出如下,1
SGVsbG8gV29ybGQK
Linux echo 指令預設會加上換行符號 \n
,如果想要 echo 不加上換行符號的話可以加上 -n
的選項,1
echo -n "Hello World" | base64
標準輸出如下,1
SGVsbG8gV29ybGQ=
Linux base64 decode 解碼
承上例,將這段編碼的文字用 base64 指令解碼,編碼後輸出至標準輸出,
Linux base64 decode 解碼的參數是 -d
,macOS base64 decode 解碼的參數是 -D
,1
echo -n "SGVsbG8gV29ybGQ=" | base64 -d
標準輸出如下,1
Hello World
Linux base64 encode 編碼並輸出至檔案
如下範例,把 inputPlan.txt 檔案內容編碼,編碼後輸出至標準輸出,1
base64 inputPlan.txt
要輸出至檔案的話,指令會變成這樣,1
base64 inputPlan.txt > encoded.txt
Linux base64 從檔案解碼 decode
承上例,將這個編碼過的 encoded.txt 的檔案用 base64 指令解碼,並輸出至標準輸出,
Linux 下 base64 解碼 decode 的參數是 -d
,macOS 下 base64 解碼 decode 的參數是 -D
,1
base64 -d encoded.txt
為什麼 linux base64 跟 python base64 的結果輸出不一樣?
在 stackoverflow 這篇有在討論為什麼 linux base64 指令跟 python base64 的輸出不一樣,理論上用不同工具做 base64 轉換應該要得到相同結果,結果發現是在用 echo 指令時會加上換行符號 \n
,解決方式就是用 echo -n
不要加上換行符號。
以上就是 Linux base64 用法與範例介紹,
如果你覺得我的文章寫得不錯、對你有幫助的話記得 Facebook 按讚支持一下!
其它相關文章推薦
Linux 常用指令教學懶人包
Linux cut 字串處理用法與範例
Linux find 尋找檔案/尋找資料夾用法與範例
Linux grep/ack/ag 搜尋字串用法與範例
Linux tee 同時螢幕標準輸出和輸出到檔案用法與範例
Linux xargs 參數列表轉換用法與範例
Linux tail 持續監看檔案輸出用法與範例