考虑以下:
me@mine:~$ cat a.sh
#!/bin/bash
echo "Lines: " $LINES
echo "Columns: " $COLUMNS
me@mine:~$ ./a.sh
Lines:
Columns:
me@mine:~$ echo "Lines: " $LINES
Lines: 52
me@mine:~$ echo "Columns: " $COLUMNS
Columns: 157
me@mine:~$
Run Code Online (Sandbox Code Playgroud)
变量$LINES和$COLUMNS是shell变量,不是环境变量,因而不会被导出到子进程(但会被自动更新,当我调整xterm窗口,通过SSH从远程位置登录,即使).有没有办法让我的脚本知道当前的终端大小?
编辑:我需要这个作为解决方法来解决这个问题:vi(以及vim,less和类似的命令)每次使用它时都会搞砸屏幕.更改终端不是一个选项,因此我正在寻找解决方法(向下滚动$LINES线肯定不是完美的解决方案,但至少比丢失前一个屏幕更好)
我有两个文件,每个文件包含每行一个十六进制数字.这两个文件具有相同的数字(因此行数相同).
我想将这两个文件合并为一个,但将数字并排显示在两列中.所以
文件A有:
a1
a2
a3
Run Code Online (Sandbox Code Playgroud)
文件B有:
b1
b2
b3
Run Code Online (Sandbox Code Playgroud)
我想要一个看起来像这样的文件:
a1 b1
a2 b2
a3 b3
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?加入看起来像一个候选人,但我一直在玩它,我无法让它工作.(Join似乎在键和排序值的前提下工作.)