UNIX 管道 pipe 的 echo 陷阱

更新 發佈閱讀 1 分鐘

要計算字串的 MD5 checksum,在 Shell 下用這樣的指令應該就可以了

echo "字串" | md5sum

但是,它怎麼跟 PHP 的 md5 函數算出來的不同!! 雖然是不同的程式語言,但同樣的字串,用同樣的演算法,應該都相同呀!

raw-image

檢查一下,推測 Shell 下的 echo 可能讓字串變了,例如有多了換行字元之類的。於是,找 echo 的線上手冊,上面寫的很清楚,加 -n 參數,不要換行字元。

再試一次,果然加了 -n 參數就好了。

所以若要用 echo 後送給管道指令,正確的指令是這樣:

echo -n "字串" | md5sum

若是 MacOS 的電腦,指令如下:

echo -n "字串" | md5
raw-image


留言
avatar-img
留言分享你的想法!
avatar-img
WILSON PENG的沙龍
2會員
26內容數
WILSON PENG的沙龍的其他內容
2023/02/02
UTF-8 萬國碼在規格定義時,有建議在文件的開始處,加入位元組順序記號 (BOM, byte-order mark)。但 Plain Text 文件,就是全部都是文字,將它加入檔頭標記,就不是純文字檔案了,所以一般都沒有實作成有 BOM 檔頭的檔案。
Thumbnail
2023/02/02
UTF-8 萬國碼在規格定義時,有建議在文件的開始處,加入位元組順序記號 (BOM, byte-order mark)。但 Plain Text 文件,就是全部都是文字,將它加入檔頭標記,就不是純文字檔案了,所以一般都沒有實作成有 BOM 檔頭的檔案。
Thumbnail
2023/01/11
要怎麼判斷是奇數還是偶數? 除以 2 有餘數的是奇數,無餘數的是偶數。 有沒有更快的方法?
Thumbnail
2023/01/11
要怎麼判斷是奇數還是偶數? 除以 2 有餘數的是奇數,無餘數的是偶數。 有沒有更快的方法?
Thumbnail
2022/12/07
當使用 Wordpress 架站時,系統至少會有四層漏洞:
Thumbnail
2022/12/07
當使用 Wordpress 架站時,系統至少會有四層漏洞:
Thumbnail
看更多
你可能也想看
Thumbnail
在小小的租屋房間裡,透過蝦皮購物平臺採購各種黏土、模型、美甲材料等創作素材,打造專屬黏土小宇宙的療癒過程。文中分享多個蝦皮挖寶地圖,並推薦蝦皮分潤計畫。
Thumbnail
在小小的租屋房間裡,透過蝦皮購物平臺採購各種黏土、模型、美甲材料等創作素材,打造專屬黏土小宇宙的療癒過程。文中分享多個蝦皮挖寶地圖,並推薦蝦皮分潤計畫。
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
戴夫寇爾研究團隊發現PHP在Windows系統上存在遠端程式碼執行漏洞,影響多個PHP版本,包括XAMPP預設安裝環境。漏洞源於字元編碼轉換的問題,允許攻擊者在遠端伺服器上執行任意程式碼。建議使用者立即升級至最新PHP版本,或採取臨時緩解措施。
Thumbnail
戴夫寇爾研究團隊發現PHP在Windows系統上存在遠端程式碼執行漏洞,影響多個PHP版本,包括XAMPP預設安裝環境。漏洞源於字元編碼轉換的問題,允許攻擊者在遠端伺服器上執行任意程式碼。建議使用者立即升級至最新PHP版本,或採取臨時緩解措施。
Thumbnail
路徑處理 basename(string [.string]):回傳第一個參數路徑字串的檔案名稱,包含副檔案,如果有第二個參數字串,就會在檔案名稱刪除此字串,例如:刪除副檔名".php"。 dirname(string):回傳參數路徑字串中的路徑。 realpath(string):回傳參數路
Thumbnail
路徑處理 basename(string [.string]):回傳第一個參數路徑字串的檔案名稱,包含副檔案,如果有第二個參數字串,就會在檔案名稱刪除此字串,例如:刪除副檔名".php"。 dirname(string):回傳參數路徑字串中的路徑。 realpath(string):回傳參數路
Thumbnail
之前因為常需要跑devops相關工具,因此開發環境完全是用Ubuntu的圖形化介面,但偶爾會遇到一些延遲以及小bug,偶然的機會下發現在windows設定git-bash似乎也能達到一樣的效果,也能順便增加對windows開發人員生態系的了解,因此本篇主要是針對如何設定美麗的terminal以及vs
Thumbnail
之前因為常需要跑devops相關工具,因此開發環境完全是用Ubuntu的圖形化介面,但偶爾會遇到一些延遲以及小bug,偶然的機會下發現在windows設定git-bash似乎也能達到一樣的效果,也能順便增加對windows開發人員生態系的了解,因此本篇主要是針對如何設定美麗的terminal以及vs
Thumbnail
UTF-8 萬國碼在規格定義時,有建議在文件的開始處,加入位元組順序記號 (BOM, byte-order mark)。但 Plain Text 文件,就是全部都是文字,將它加入檔頭標記,就不是純文字檔案了,所以一般都沒有實作成有 BOM 檔頭的檔案。
Thumbnail
UTF-8 萬國碼在規格定義時,有建議在文件的開始處,加入位元組順序記號 (BOM, byte-order mark)。但 Plain Text 文件,就是全部都是文字,將它加入檔頭標記,就不是純文字檔案了,所以一般都沒有實作成有 BOM 檔頭的檔案。
Thumbnail
要計算字串的 MD5 checksum,在 Shell 下用這樣的指令應該就可以了 但是,它怎麼跟 PHP 的 md5 函數算出來的不同!! 雖然是不同的程式語言,但同樣的字串,用同樣的演算法,應該都相同呀!
Thumbnail
要計算字串的 MD5 checksum,在 Shell 下用這樣的指令應該就可以了 但是,它怎麼跟 PHP 的 md5 函數算出來的不同!! 雖然是不同的程式語言,但同樣的字串,用同樣的演算法,應該都相同呀!
Thumbnail
sed 指令 ( 取代 , 截取行 ) 删除文件第一行: sed -i ‘1d’ filename 删除文件最后一行: sed -i ‘$d’ fileName 刪除首行空白 sed ‘s/^[ \t]*//g’ 參考 : https://codertw.com/前端開發/393321/ 在檔案最後
Thumbnail
sed 指令 ( 取代 , 截取行 ) 删除文件第一行: sed -i ‘1d’ filename 删除文件最后一行: sed -i ‘$d’ fileName 刪除首行空白 sed ‘s/^[ \t]*//g’ 參考 : https://codertw.com/前端開發/393321/ 在檔案最後
Thumbnail
一直以來都是靠手動的方式來進行檔案的版本管理,也就是自己複製檔案,然後改檔名,加入可以識別的編號。不過,越來越覺得,有必要用版本控制系統來幫忙,因為手動的方式實在很累人,而且當需要查找以前更動的內容時,非常沒有效率。當發現Spyder也有支援Git時,就想著:「好吧!那就試用看看好了。」
Thumbnail
一直以來都是靠手動的方式來進行檔案的版本管理,也就是自己複製檔案,然後改檔名,加入可以識別的編號。不過,越來越覺得,有必要用版本控制系統來幫忙,因為手動的方式實在很累人,而且當需要查找以前更動的內容時,非常沒有效率。當發現Spyder也有支援Git時,就想著:「好吧!那就試用看看好了。」
Thumbnail
介紹 這章節純看智商 不可逆加密:原文加密後變成密文,但密文沒辦法解密文回原文 可逆加密:原文加密過後的密文,可以在將密文解密回原文 對稱:表示加解密是否使用同一個key MD5 不可逆加密 MD5 使用的命名空間是 System.Security.Cryptography MD5是一種公開的算法
Thumbnail
介紹 這章節純看智商 不可逆加密:原文加密後變成密文,但密文沒辦法解密文回原文 可逆加密:原文加密過後的密文,可以在將密文解密回原文 對稱:表示加解密是否使用同一個key MD5 不可逆加密 MD5 使用的命名空間是 System.Security.Cryptography MD5是一種公開的算法
Thumbnail
生命中總會有不得已,有幾個必須把函式寫得很長的時候,要怎麼寫才不容易出錯呢?
Thumbnail
生命中總會有不得已,有幾個必須把函式寫得很長的時候,要怎麼寫才不容易出錯呢?
Thumbnail
常常會遇到好不容易寫好程式,但是輸出的時候沒辦法按照自己想要的格式,或是間隔來輸出,這時需要用到的就是格式化輸出,格式化輸出就是調整排版的一個形式。
Thumbnail
常常會遇到好不容易寫好程式,但是輸出的時候沒辦法按照自己想要的格式,或是間隔來輸出,這時需要用到的就是格式化輸出,格式化輸出就是調整排版的一個形式。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News