在某些操作系统中,如 Ubuntu、Debian 等。cal
返回当前日历并突出显示今天。 cal -h
关闭今天的突出显示:
但在某些操作系统中,例如 Arch Linux -h
param 显示日历的帮助。
我正在用 Lua 编写一个小脚本:
function foo()
local f, err = io.popen('cal -h', 'r')
if f then
local s = f:read("*all")
f:close()
return s
else
return err
end
end
我的主要问题 - 我如何确定具体返回的参数 -h
?
最佳答案
执行 cal -h
并解析单词“help”的输出。如果找到该词,则“-h”用于寻求帮助。如果找不到单词,它很可能用于表示突出显示,但没有确定的方法(一种适用于所有 Linux 版本的方法)。您很可能需要一些代码来读取标识平台的环境变量,以便您可以发出正确的命令并依赖不同 Linux 风格的用户在默认失败时报告并向您报告正确的命令行参数。 OTOH 您可以将支持仅限于您有权访问的那些平台。或这些方法的组合。
关于linux - 确定返回参数的确切内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26576431/