勘误表:
已经提出了类似的问题,但在搜索了几天之后,似乎没有针对这种特定情况的答案。
问题描述:
以下 bash 脚本中的第二行触发错误:
#!/bin/bash
sessionuser=$( ps -o user= -p $$ | awk '{print $1}' )
print $sessionuser
Run Code Online (Sandbox Code Playgroud)
这是错误消息:
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE (.*?)}/ at /usr/bin/print line 528.
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情:
如果错误消息中给出的建议是这样的:
sessionuser=$( ps -o user= -p 1000 | awk '\{print $1}' )
Run Code Online (Sandbox Code Playgroud)
它导致以下错误消息与上一个错误消息相结合:
awk: cmd. line:1: \{print $1}
awk: cmd. line:1: …Run Code Online (Sandbox Code Playgroud)