paropunam Asked: 2023-01-17 06:58:07 +0800 CST2023-01-17 06:58:07 +0800 CST 2023-01-17 06:58:07 +0800 CST 为什么 `htop` 在 `sort` 命令中将 `$'\t'` 显示为 `?`? 772 我正在运行一个管道命令,其中一个部分如下: sort -t $'\t' -T . -k1,1g 当我在监视时,htop我看到了这个: 这背后的原因是什么?这是否意味着我的命令有误或有问题htop? sort 2 个回答 Voted Best Answer Stephen Kitt 2023-01-17T07:09:55+08:002023-01-17T07:09:55+08:00 您的命令没有任何问题,htop用问号替换控制字符: (((unsigned char)data_c[j]) >= 32 ? ((unsigned char)data_c[j]) : '?') (值小于 32 的字符是控制字符)。 Turn Dealer 2023-01-18T09:17:21+08:002023-01-18T09:17:21+08:00 htop 进程管理器在 sort 命令中显示$'\t'为 as因为它将 解释为制表符,这不是有效的排序选项。?\t 在排序命令中,\t用作定界符以指定命令应排序的字段。但是,在 htop 中,它不是有效的分隔符,因此显示为 ? 在排序列中。 您可以尝试使用 -k 选项指定排序字段,使用 -t 选项指定分隔符。例如,htop -u -p -k 2,2 -t ' '使用空格作为分隔符按第二个字段排序。
您的命令没有任何问题,
htop
用问号替换控制字符:(值小于 32 的字符是控制字符)。
htop 进程管理器在 sort 命令中显示
$'\t'
为 as因为它将 解释为制表符,这不是有效的排序选项。?
\t
在排序命令中,
\t
用作定界符以指定命令应排序的字段。但是,在 htop 中,它不是有效的分隔符,因此显示为 ? 在排序列中。您可以尝试使用 -k 选项指定排序字段,使用 -t 选项指定分隔符。例如,
htop -u -p -k 2,2 -t ' '
使用空格作为分隔符按第二个字段排序。