awk取代单引号

Gee*_*tra 4 unix shell awk

我想用include('./一组文件替换所有文件include('.我试图使用awk如下:

awk '{gsub("include\('"'"'./", "include\('"'"'", $0); print > FILENAME}' *.php
Run Code Online (Sandbox Code Playgroud)

它抛出了这个错误.

awk: (FILENAME=xyz.php FNR=1) fatal: Unmatched ( or \(: /include('.//
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

gho*_*g74 12

@ OP,您可以尝试使用八进制代码表示单引号(\047)和正斜杠(\057),例如

$ cat file
include('./
$ awk '{gsub(/include\(\047\.\057/ , "include(\047" ) }1' file
include('
Run Code Online (Sandbox Code Playgroud)