Shell CLI 達成 HMAC SHA256 加密
科技進步是來自於偷懶,前陣子小編剛好有投資點加密貨幣,但某些固定的操作讓人心煩。就寫了個小shell腳本自動進行買賣還有交易。但中間OKX(過去原名OKEX)API 腳本中有一段需要將產生ACCESS SIGN才能操做,苦惱了我一陣子。因為網路上寫python特別多,找到 shell 相關腳本的相較少。
…Shell CLI 達成 HMAC SHA256 加密 閱讀全文 »
科技進步是來自於偷懶,前陣子小編剛好有投資點加密貨幣,但某些固定的操作讓人心煩。就寫了個小shell腳本自動進行買賣還有交易。但中間OKX(過去原名OKEX)API 腳本中有一段需要將產生ACCESS SIGN才能操做,苦惱了我一陣子。因為網路上寫python特別多,找到 shell 相關腳本的相較少。
…Shell CLI 達成 HMAC SHA256 加密 閱讀全文 »
前陣子在Shell Scrpit 中使用了陣列,宣告陣列的方式跟其他程式語言不同,導致後續問題排除了一段時間。
…SC1087 在 Shell Scrpit 正確宣告陣列函數 閱讀全文 »
網域在 Google domains 上購買有提供 DNS 代管服務,本網站的主機是使用樹梅派架設 LEMP,對外中華電信光纖上網只有一個固定IP,使用浮動IP來對外服務每72小時就會中斷一次。
要確保網站可以提供長期服務,當偵測到IP有所變化就會自動更新主機位置給 Google 的動態 DNS,讓全世界的人都可以正確地連入 Server 。
…Raspberry PI PPPoE 撥號完成後自動更新 Google 動態 DNS 閱讀全文 »
echo foo >> file
date >> file
cat stuff >> file
{
echo foo
date
cat stuff
} >> file
用 {} 把所有要重新定向的內容進行分組,一次性的導入 “>> file” 文件中,此寫法有兩點優勢。
第一讓代碼更簡化不用每行添加 “>> file” 進行寫入文件,第二文件只需打開及關閉一次,這代表的執行性能被提高了。
此問題僅僅是寫作風格的不同,需要忽略此提示也可以。
SC2129 當多行重新定向寫入文件時考慮使用{cmd1; cmd2; } >>文件,而不是單行寫入。 閱讀全文 »
grep foo | wc -l
grep -c foo
grep foo * .log | wc -l
cat * .log | grep foo -c
這單純是一種程式編碼上風格問題,因 grep 可以直接進行計算無須再次利用管道方式傳送至 wc 進行運算。
檢查有無符合的匹配項目,在沒有符合的項目時(參數值==0),此情形下使用 grep -q 甚至更加清晰及高效率,例如下列示範:
if grep -q pattern file; then
echo "此文件有符合的項目"
fi
當如果執行 foo | grep bar | wc -l,在正常情形下無法顯示 grep 執行時的異常訊息,並且始終顯示執行成功,錯誤排除時難以查找問題。如果替換成 foo | grep -c bar 則在沒有匹配項目時退出會顯示 0 。
如果在特定情形下 wc 指令可以使結果更清楚,就可以忽略此寫法。
SC2126 建議使用 grep -c代替 grep | wc 閱讀全文 »