コマンドを使用して行番号を取得したいのgrep
ですが、検索パターンが単一の単語ではない場合にエラー メッセージが表示されます。
couldn't read file "Pattern": no such file or directory
grep の適切な使用法はどのようにすべきですか? コードは次のとおりです。
set status [catch {eval exec grep -n '$textToGrep' $fileName} lineNumber]
if { $status != 0 } {
#error
} else {
puts "lineNumber = $lineNumber"
}
また、検索パターンがまったく一致しない場合、返される値は次のとおりです。"child process exited abnormally"
簡単なテストケースは次のとおりです。
set textToGrep "<BBB name=\"BBBRM\""
ファイルの内容:
<?xml version="1.0"?>
<!DOCTYPE AAA>
<AAA>
<BBB name="BBBRM" />
</AAA>