Daten
1
\begin{document}
3
Code
#!/bin/bash
function getStart {
local START="$(awk '/begin\{document\}/{ print NR; exit }' data.tex)"
echo $START
}
START2=$(getStart)
echo $START2
was zurückkommt 2
aber ich will 3
. Ich ändere das Ende erfolglos durch diese Antwort über Wie kann ich Zahlen in ein Bash-Skript einfügen :
START2=$((getStart+1))
Wie können Sie eine lokale Variable im Bash-Skript erhöhen?
bash
variable
function
arithmetic
Léo Léopold Hertz 준영
quelle
quelle
awk
?sed -n '/begin{document}/{=;q}' data.text
viel kürzer ...}/{=;q}
dies bitte in einer Antwort / Kommentar erklären ?Antworten:
Ich bekomme
2
von Ihrem Code. Trotzdem können Sie dieselbe Technik für jede Variable oder Zahl anwenden:oder
oder
oder
oder nur
etc.
quelle
Versuchen:
Die
$(( ))
Tells-Bash weist die Bash an, eine arithmetische Operation auszuführen, während die Backticks die Bash anweisen, den enthaltenen Ausdruck auszuwerten, sei es eine benutzerdefinierte Funktion oder ein Aufruf eines externen Programms, und den Inhalt von stdout zurückzugeben.quelle