小编Raz*_*azz的帖子

"w | tail" 在右边距切割文本(78 个字符)

摘要: w | tail在第 78 列之后砍行。

当我运行“w”命令时,它按预期工作。但是,当我将输出通过管道传输到“tail”时,它将输出截断为78列宽(截断右边距之后的任何内容)。

我检查set,并env为78(或79或80)的任何值,以及TERM(xterm中| ANSI | VT100),和stty -a设置,以及tailw(他们看起来OK)。 $COLUMNS设置为 209(但这无关紧要...我将其设置为 100,结果相同)。

我正在运行 CentOS 5(内核 - 2.6.18)。在tailw二进制文件看行给我。

/usr/bin/w:ELF 64 位 LSB 可执行文件,AMD x86-64,版本 1 (SYSV),用于 GNU/Linux 2.6.9,动态链接(使用共享库),剥离

CentOS$ cat 80.txt
          1         2         3         4         5         6         7         8
012345678901234567890123456789012345678901234567890123456789012345678901234567890
----------+---------+---------+---------+---------+---------+---------+---------+
CentOS$ export COLUMNS=100
CentOS$ w | tail -5 | sed 's/./\./g'
.....................................................................
...............................................................................
...............................................................................
...............................................................................
...............................................................................
Run Code Online (Sandbox Code Playgroud)

terminal pipe shell-script tty

7
推荐指数
1
解决办法
442
查看次数

标签 统计

pipe ×1

shell-script ×1

terminal ×1

tty ×1