Linux base64 用法與範例

本篇 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 持續監看檔案輸出用法與範例