ITPub博客

首页 > 数据库 > Oracle > [20260603]sqlplus set linesize window使用注意.txt

[20260603]sqlplus set linesize window使用注意.txt

原创 Oracle 作者:lfree 时间:2026-06-04 20:43:10 0 删除 编辑

[20260603]sqlplus set linesize window使用注意.txt

--//18c开始增加set linesize window,可以自动适用当前打开的窗口大小,但是实际上同时也修改pagesize的大小。

1.环境:
SCOTT@book01p> @ ver2
==============================
PORT_STRING                   : x86_64/Linux 2.4.xx
VERSION                       : 21.0.0.0.0
BANNER                        : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
BANNER_FULL                   : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
BANNER_LEGACY                 : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
CON_ID                        : 0
PL/SQL procedure successfully completed.

2.测试:
--//初始化如下:
SCOTT@book01p> show linesize pagesize
linesize 269
pagesize 50000

SCOTT@book01p> set  linesize window
SCOTT@book01p> show linesize pagesize
linesize 272 WINDOW
pagesize 76
--//可以发现执行set  linesize window,其pagesize也发生变化.

--//拉动窗口上下,缩小窗口大小,长度不变:
SCOTT@book01p> show linesize pagesize
linesize 272 WINDOW
pagesize 57
--//可以发现pagesize大小发生变化.

--//拉动窗口左右,缩小窗口大小,宽度不变:
SCOTT@book01p> show linesize pagesize
linesize 218 WINDOW
pagesize 57
--//可以发现linesize大小发生变化.
--//换一句话讲set linesize window不仅仅适应窗口大小,修改linesize的大小,还同时修改pagesize的大小.
--//或者讲也同时实现类似set pagesize window的功能。

3.写一个脚本单独修改linesize。

--//linux下查询$COLUMNS $LINES变量可以获得当前窗口大小。
$ echo $COLUMNS $LINES
218 57

SCOTT@book01p> host echo $COLUMNS $LINES

--//通过host查询没有结果,不能通过该变量获得linesize值。

--//简单写一个脚本实现仅仅修改linesize的功能,缺点是窗口大小变化时需要手工执行,而且仅仅在linux下可用,其他unix没法测试。

$ cat linesize.sql
-- set linesize according to stty size or tput cols
-- host echo set linesize $(stty size | cut -d" " -f2) | tee /tmp/linesize.sql
host echo set linesize $(tput cols) |tee /tmp/linesize.sql
@ /tmp/linesize.sql


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-3173113/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7969260