Dados
1
\begin{document}
3
Código
#!/bin/bash
function getStart {
local START="$(awk '/begin\{document\}/{ print NR; exit }' data.tex)"
echo $START
}
START2=$(getStart)
echo $START2
que retorna, 2
mas eu quero 3
. Altero sem êxito o final desta resposta sobre Como posso adicionar números em um script bash :
START2=$((getStart+1))
Como você pode incrementar uma variável local no script Bash?
bash
variable
function
arithmetic
Léo Léopold Hertz 준영
fonte
fonte
awk
?sed -n '/begin{document}/{=;q}' data.text
muito mais curto ...}/{=;q}
isso em uma resposta / comentário, por favor?Respostas:
Estou recebendo
2
do seu código. No entanto, você pode usar a mesma técnica para qualquer variável ou número:ou
ou
ou
ou apenas
etc.
fonte
Experimentar:
O
$(( ))
tell bash é para executar uma operação aritmética, enquanto os backticks informam ao bash para avaliar a expressão que contém, seja uma função definida pelo usuário ou uma chamada para um programa externo, e retorne o conteúdo do stdout.fonte