看板 Linux 關於我們 聯絡資訊
剛剛在寫個 openssl aes 加解密的小測試, 因為引入參數需要是 hex 形式, google 了大部分解答都建議用 od -A n -t x1 來處理, 就寫了個小指令稿 #!/bin/bash KEY=0123456789abcdef KEY=`echo -n $KEY | od -A n -t x1 | sed 's/ *//g'` 執行得到 30313233343536373839616263646566 嗯, 正確, 再加長一倍 KEY=0123456789abcdef0123456789abcdef 執行得到 30313233343536373839616263646566 in.file out.file run run 錯誤 經過測試, KEY內的任意兩個字元對調, 得到的都是正確, 但是只要用 0~f 的順序, 就一定跳錯誤訊息. 換了 CentOS 7 & Ubuntu 16.04 都得到相同的結果(錯誤訊息不同) 請問有人知道這發生了什麼事情嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.15.23.62 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1541141041.A.A91.html
kdjf: od每8byte換一行,如果第二行跟第一行一樣的話會用*取代 11/02 15:22
kdjf: in.filexxxxxx大概是被shell展開的檔案吧.. 11/02 15:23
yvb: od -A n -t x1 -v 11/02 16:31
m8403051: 謝謝, -v 加上去後就正常顯示了 11/02 18:35