小编Wes*_*esZ的帖子

awk 正则表达式 字边界

我有两台 Linux 机器。一种是 4.4.12-99,一种是 4.4.143。我刚刚对它们都运行了 apt update 。

我有一个 awk 语句,其中包含一个在 4.4.143 上运行的正则表达式,但在 4.4.12-99 上失败。我已经搜索了几天并尝试了多种不同的语法来发现可能出现的问题。awk 并不是失败或抱怨,它只是与单词边界不匹配。除了这个 awk 语句之外,每台机器上的脚本都是相同的并且工作正常。对于无法正常工作的情况,我可以使其匹配所有内容并提供该结果。

ip=$(awk -v sUSER="$sUSER" 'BEGIN{gsub(/\./,"\\.",sUSER)}match($0,/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/) && $0 ~ ("[^[:alnum:]]"sUSER"$") && $0 !~ /^$/ && $0 !~ /^#/{print $1}' /etc/hosts )
Run Code Online (Sandbox Code Playgroud)

awk 使用变量 $sUSER 查找 /etc/hosts 文件,并尝试将用户与关联的 IP 地址进行匹配。

我不知道我做错了什么。

regex bash awk match

2
推荐指数
1
解决办法
4338
查看次数

从连接字符串名称调用 Python 函数名称

我想通过连接“字符串”+变量+“字符串”创建一个 def 函数名称并调用该 def 函数。

为了简单起见,我目前正在使用这个压缩版本的代码来类似地完成任务,并且我想最小化函数 do_update(a) 的硬代码内容:

ROTATE = '90'

ROT20 = [
[0, 0, 0, 0, 0, 0, 0, 0],
[126, 129, 153, 189, 129, 165, 129, 126],
[126, 255, 231, 195, 255, 219, 255, 126],
[0, 8, 28, 62, 127, 127, 127, 54],
[0, 8, 28, 62, 127, 62, 28, 8],
[62, 28, 62, 127, 127, 28, 62, 28],
[62, 28, 62, 127, 62, 28, 8, 8],
[0, 0, 24, 60, 60, 24, 0, 0],
];

def …
Run Code Online (Sandbox Code Playgroud)

python function

1
推荐指数
1
解决办法
1532
查看次数

标签 统计

awk ×1

bash ×1

function ×1

match ×1

python ×1

regex ×1