[問題] od 指令的小問題

看板Linux作者 (大吉嶺紅茶)時間7年前 (2018/11/02 14:44), 編輯推噓0(004)
留言4則, 3人參與, 7年前最新討論串1/1
剛剛在寫個 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

11/02 15:22, 7年前 , 1F
od每8byte換一行,如果第二行跟第一行一樣的話會用*取代
11/02 15:22, 1F

11/02 15:23, 7年前 , 2F
in.filexxxxxx大概是被shell展開的檔案吧..
11/02 15:23, 2F

11/02 16:31, 7年前 , 3F
od -A n -t x1 -v
11/02 16:31, 3F

11/02 18:35, 7年前 , 4F
謝謝, -v 加上去後就正常顯示了
11/02 18:35, 4F
文章代碼(AID): #1Rs_8ngH (Linux)
文章代碼(AID): #1Rs_8ngH (Linux)