Это хороший вопрос, и хотя ответ показывает, что он $был не на своем месте, я не уверен, что он должен быть закрыт как опечатка. Я видел несколько таких недавно, поэтому, возможно, нам нужен канонический
roaima
Ответы:
45
На переменные ссылаются по имени как в var, а не $varв awk. $nссылается на поле nth : для первого поля, для второго ... или всей записи для == 0 ( полная запись).$1$2n$0
Это не должны быть буквальные числа. Вы можете использовать $(1+1)или $variable. Если variableсодержит 1, то $variableбудет первое поле. Обычно используется $NFдля последнего поля ( NFэто специальная переменная, которая содержит количество полей).
Если, как в вашем примере, переменная не содержит числа, то это не число понимается как 0.
Таким образом var="content"; print $var, это то же самое var=0; print $var, что и то же самое print $0, что и печать всей записи.
$
из $ var$
был не на своем месте, я не уверен, что он должен быть закрыт как опечатка. Я видел несколько таких недавно, поэтому, возможно, нам нужен каноническийОтветы:
На переменные ссылаются по имени как в
var
, а не$var
вawk
.$n
ссылается на полеn
th : для первого поля, для второго ... или всей записи для == 0 ( полная запись).$1
$2
n
$0
Это не должны быть буквальные числа. Вы можете использовать
$(1+1)
или$variable
. Еслиvariable
содержит1
, то$variable
будет первое поле. Обычно используется$NF
для последнего поля (NF
это специальная переменная, которая содержит количество полей).Если, как в вашем примере, переменная не содержит числа, то это не число понимается как 0.
Таким образом
var="content"; print $var
, это то же самоеvar=0; print $var
, что и то же самоеprint $0
, что и печать всей записи.То, что вы хотите здесь, это:
источник