首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Solaris 10,Shell脚本,光标移动

Solaris 10,Shell脚本,光标移动
EN

Unix & Linux用户
提问于 2013-02-22 09:31:44
回答 1查看 462关注 0票数 0

# # #include #include #include void (){ time_t rawtime;struct * timeinfo;char *s;signal(SIGALRM,prtime);time ( &rawtime );timeinfo = localtime ( &rawtime ); (1);//printf("Time\n");printf [S][6;45H %s \033[u",上升时间(timeinfo) ];} int main() {信号(SIGALRM,prtime);警报(1 );printf(“继续指令\n”);同时(1){暂停();printf(“继续指令\n”);}}

我只是尝试将时钟写在终端的特定位置,但我想在写入时钟之前保存光标位置,然后在写入时钟后恢复该位置。

但是\033[s & \033[u不起作用。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2013-02-22 13:18:50

您使用的是命令CSI sCSI u,它们根据实现的不同具有不兼容的解释。

第一个可以是“保存游标位置”或“重置终端模拟器”,后者是Solaris专用接口。

您应该使用像ncurses这样的库来实现可移植的屏幕处理,但是如果您仍然想对转义序列进行硬编码,这可能会达到您预期的效果:

代码语言:javascript
复制
printf ( "\0337\033[6;45H %s \0338", asctime (timeinfo) );
票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/65724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档