簡體   English   中英

如何忽略awk命令中的轉義序列警告

[英]How to ignore the escape sequence warning in awk command

我使用以下命令獲取特定字符串的行號

str_to_search="\/searchString >"
fileName=Myfile.txt
startingCt=$(awk '$0 ~ str{print NR; exit }' str="$str_to_search" $fileName)
endingCt=$(($startingCt + 3))
echo $startingCt
echo $endingCt

我能夠得到行號,但我得到轉義序列的警告信息

awk:cmd。 line:1:警告:轉義序列\\/' treated as plain /'

如果有任何方法可以忽略轉義序列的警告,請告訴我,有沒有更好的方法來獲取行號。 提前致謝。

問題可能與您的awk版本有關。

請參見此處的鏈接: http//ubuntuforums.org/showthread.php?t = 474549

以下是AWK的方法:

gawk '/PATTERN/ {print FNR}' filename

我可以提供這個解決方案,雖然它不使用awk嗎?

sed -n '/pattern/=' filename

Sed和AWK有點像可愛的兄弟,你會在很多系統上找到它們的某種版本,並分享很多功能,但用不同的方式使用它們。

上面的命令將僅輸出您要查找的模式的行號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM