Data
1
\begin{document}
3
Kode
#!/bin/bash
function getStart {
local START="$(awk '/begin\{document\}/{ print NR; exit }' data.tex)"
echo $START
}
START2=$(getStart)
echo $START2
yang kembali 2
tetapi saya inginkan 3
. Saya tidak berhasil mengubah akhirnya dengan jawaban ini tentang Bagaimana saya bisa menambahkan angka dalam skrip bash :
START2=$((getStart+1))
Bagaimana Anda bisa meningkatkan variabel lokal dalam skrip Bash?
bash
variable
function
arithmetic
Léo Léopold Hertz 준영
sumber
sumber
awk
?sed -n '/begin{document}/{=;q}' data.text
jauh lebih pendek ...}/{=;q}
ini dalam jawaban / komentar, tolong?Jawaban:
Saya dapatkan
2
dari kode Anda. Namun demikian, Anda dapat menggunakan teknik yang sama untuk variabel atau angka apa pun:atau
atau
atau
atau hanya
dll.
sumber
Mencoba:
The
$(( ))
memberitahu bash yang itu adalah untuk melakukan operasi aritmatika, sedangkan backticks mengatakan bash untuk mengevaluasi ekspresi yang mengandung, baik itu fungsi user-defined atau panggilan untuk program eksternal, dan kembali isi stdout.sumber