社区
Linux/Unix社区
帖子详情
linux script命令的开发使用
truetempus
2018-09-13 04:45:22
最近有个项目,需要监视linux系统下用户在终端的操作记录,研究下了可以使用script命令进行将操作记录形成文本,文本文件用cat命令可以查看,效果很好,如下图
这个文件我需要用程序读取,并发送给其他服务器的,但读出结果却是乱码
vi打开效果如下图
gedit打开效果如下图
从实际的文本内容来看,里面应该还记录了一些ASCII控制字符,
不知道有没有什么方法可以去除这些控制字符,可以让我程序读出的内容与cat命令显示一样,希望有经验的大神帮帮我,就50分了,全部送出,谢谢
...全文
1052
8
打赏
收藏
linux script命令的开发使用
最近有个项目,需要监视linux系统下用户在终端的操作记录,研究下了可以使用script命令进行将操作记录形成文本,文本文件用cat命令可以查看,效果很好,如下图 这个文件我需要用程序读取,并发送给其他服务器的,但读出结果却是乱码 vi打开效果如下图 gedit打开效果如下图 从实际的文本内容来看,里面应该还记录了一些ASCII控制字符, 不知道有没有什么方法可以去除这些控制字符,可以让我程序读出的内容与cat命令显示一样,希望有经验的大神帮帮我,就50分了,全部送出,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
孤傲小二~阿沐
2020-05-07
打赏
举报
回复
那我想在脚本文件里面使用这个,该怎么办
qujianjun88
2018-11-20
打赏
举报
回复
刚做了一个和你类似的项目,需要把script录制文件在程序里面用sed正则处理一下,看一下这个函数吧
int loginoperatebuf(char * buf,char * filename) {
FILE *stream;
char cmd[500];
memset(cmd, '\0', 500);
//由于是script录制的登录文件中包含了一些其他信息,例如回车、换行、字符颜色、退格等操作符,所以需要处理一下
sprintf(cmd, "sed -r -e \"s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g\" -e \"s/.*\\x1B\\[C/\\[\\]/g\" -e \"s/.*\\x1B\\[K/\\[\\]/g\" -e \"{:a;s/.\\x08//;ta}\" %s",filename); //sed正则
memset(buf, '\0', 10000);
stream = popen(cmd, "r");
fread(buf, sizeof(char), 10000, stream);
pclose(stream);
return 0;
}
kimsung
2018-09-19
打赏
举报
回复
都是换行符, 去掉换行符。 sed "s/^M\|^G//g" sourcefile > targetfile 这里^M和^G知道怎么打吧?
kimsung
2018-09-19
打赏
举报
回复
哦, sorry,应该转换成换行符, 这个要根据你的os。 mac \r unix \n windows \r\n
ckc
2018-09-18
打赏
举报
回复
多出的是改变颜色的控制字符吧 如果你自己写程序处理的话,可以把0x1b,0x5b开始,0x6d结束的部分去掉试下
truetempus
2018-09-18
打赏
举报
回复
引用 1 楼 qq_36751214 的回复:
直接把这个文件cat * >a.log 然后再传a.log 就可以了 。
你这个方法我早就试过了,答案是不行的。。。
金秋枣香
2018-09-17
打赏
举报
回复
直接把这个文件cat * >a.log 然后再传a.log 就可以了 。
?12????
2018-09-17
打赏
举报
回复
直接把这个文件cat * >a.log 然后再传a.log 就可以了 。
Linux
命令
完全手册
这本《
Linux
命令
完全手册》将涵盖你作为
开发
者需要用到的 60 个核心 Bash
命令
。每个
命令
都附有代码示例和用法提示。...以下介绍的
命令
,在
Linux
、macOS、WSL 和其他类 UNIX 环境均可
使用
。 我希望这本手册的内...
Linux
下C语言
开发
Linux
下C语言
开发
Linux
下C语言
开发
Linux
下C语言
开发
流程C语言
开发
工具c语言代码编辑工具
Linux
C语言的编译器gccgcc 的安装和配置gcc对c语言的处理过程gcc的基础
使用
方法
Linux
C语言的调试工具gdbgdb的基础
使用
gdb运行...
会
linux
基本
命令
是脚本语言吗,shell脚本语言与
linux
命令
的联系与区别
使用
linux
肯定是要会
使用
命令
的,就算提供有用户界面,绝大部分功能还是要通过
命令
行去操作的。而shell脚本语言也是运行在
linux
上的脚本语言,对于服务器运维人员也是几乎必须要掌握的。而shell脚本语言和
linux
命令
...
Linux
命令
大全(排版清晰!!持续更新!!非常详细)
最近在
使用
Linux
的时候,发现有很多
命令
不太会。在csdn查阅
命令
大全的时候,发现很多文章都没有很好的排版,于是写一篇文章,希望能够帮助到大家! 一、基本操作
命令
首先先来几个热键,非常方便,一定要记住 Tab...
QT调用
linux
外部
命令
或者shell
script
由以上两种操作可以看出,
使用
标准库的 system() 方法执行外部 Shell 脚本非常的简单,但我并没有研究如何在
使用
system() 方法的情况下将 Shell 脚本的输出打印到我们的应用程序上。而且该方法还有个显而易见的缺点...
Linux/Unix社区
23,120
社区成员
74,507
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章