windows - AWK:查看是否在 Windows 上运行

标签 windows awk

如何知道我是否使用 Windows?

我需要在 AWK 中执行操作系统特定的命令。

具体来说,我想要 Windows 上的 system("mkdir DIR") system("mkdir -p DIR") 其他地方 (Unix/Linux/OS X/BSD), 递归创建目录。

最佳答案

这是 Birei 的版本的稍微优化版本。 .

OS 环境变量仅且(据说)始终在 Windows 上指定,并且它应始终包含某种形式的字符串“windows”,例如“Windows_NT”。

awk '
    BEGIN {
        is_windows = 0;
        if (index(tolower(ENVIRON["OS"]), "windows") > 0) {
            is_windows = 1;
        }
    }
    ...
' input-file

感谢来自 #awk 和 Birei 的人们!

关于windows - AWK:查看是否在 Windows 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12025617/

相关文章:

windows - Powershell 远程 PSSession 失败 - 域管理员帐户

windows - 用于搜索和删除特定文件名的批处理脚本

linux - 在不使用 grep -w 的情况下在 QNX 中查找完全匹配项

escaping - 如何在awk打印语句中的参数周围添加单引号?

c++ - 确定核心 i5/7 架构上的程序运行时间

python - 从 Windows cmd 为多个文件运行 python 脚本

c++ - 聆听窗外的电波

awk - 如何将 shell 变量传递给 awk?

awk - zsh - 有效地在数组中缓存带引号的字符串

linux - 按字段排序 UNIX