錯誤代碼:
echo "Name:\t$value"
正確代碼:
printf 'Name:\t%s\n' "$value"
修正原因:
特殊字元像是 \t 或是 \n 並不會被 echo 轉義成特殊字元,而會如實的列印出字面上的 \t 及 \n。但 printf 會確實的解析此類型的特殊字元,應改變使用習慣。
部分Linux 支援像是使用 echo -e ‘\t’ 和 echo$’\t’。但為了共通性應該避免使用,
printf 確實會擴展這些序列,應改為使用。如果在 VS code 中撰寫shell 腳本開頭宣告#!/bin/sh , ShellCheck 套件也會發出此警告。
如果您確實需要字面反斜線-t,請使用
echo "\\t"
例外狀況:
無


![[WSL] 環境弄壞了?教你 10 秒快速重灌/重置 Ubuntu (最乾淨的方法)](https://www.cjkuo.net/wp-content/uploads/2025/12/Gemini_Generated_Image_kba7z5kba7z5kba7.webp)
![Nginx 警告排查:[warn] protocol options redefined 深度解析與解決方案](https://www.cjkuo.net/wp-content/uploads/2025/11/PXL_20251008_154825536.MP-EDIT-1024x576.webp)


