在 sort 的手冊頁中,-t 用於指定欄位分隔符號。但我不知道這個-t$'\t'
表格是什麼意思?
答案1
Bash ANSI-C 引用。如果你像這樣包裝一個字串$'string'
,它會按照與 C 字串相同的規則進行擴充。在你的情況下$'t'
變成 just 't'
,但如果是的話$'\t'
它將成為製表符。這與使用雙引號有點不同,因為"string"
雙引號允許 bash 替換(例如,變數擴展)
答案2
-t 選項後面的「$」用於指定使用超過 7 位元進行表示的字元。例如,對於換行符號:“\n”,對於製表符“\t”。如果你這樣做:
sort -t '\t'
Sort 可能會列印錯誤,指出您使用了太多字符,因為它嘗試逐字讀取“\”和“t”。
因此,在您的範例中,省略了反斜線。
例如,與 cut 指令相同:
cut -d$'\t'