我想写一个像Linux的“less”命令的交互式程序。 原因我不能在我的设置中使用较less,因为您可以在不太及时的'!cmd'执行shell命令,这对于任何生产环境来说都是一个主要的安全风险。
我的首选语言是C,但是,如果任何人都可以提出任何其他类似的计划,由于我手头上的时间,也会很棒。
我知道一个选项是浏览较less的源代码,但是看起来在短时间内并不是很直接。
令人惊讶的是,我在自己的Man page中得到了答案。 您可以使用其中一个变量禁用这些东西。
安全性当环境变量LESSSECURE设置为1时,少于“安全”模式运行。 这意味着这些功能被禁用:
! the shell command | the pipe command :e the examine command. v the editing command s -o log files -k use of lesskey files -t use of tags files metacharacters in filenames, such as * filename completion (TAB, ^L) Less can also be compiled to be permanently in "secure" mode.
“少”“多”是流程或程序本身。 你读了你运行的其他命令的o / p(可能你将用一个管道重定向|),并像文件一样通过它们进行解析,并每10行打印一次。
这可以通过简单的Python或C完成。但逻辑应该是相同的