Question

Please let me know what is wrong with below code:

#!/bin/csh
set str = "peanut"
set sr = "an"
awk 'BEGIN { print index($str,$sr) }'

The error is awk: Field is not correct. The source line number is 1.

Était-ce utile?

La solution

The $variable strings are not interpreted by Csh within the 'single quotes'.

Perhaps the simplest fix is to use (GNU) Awk variables as command-line parameters:

#!/bin/csh
set str = "peanut"
set sr = "an"
awk -vstr=$str -vsr=$sr 'BEGIN { print index(str, sr)}'
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top