Linux シェル,スクリプト中の行番号を表示してデバッグする

スポンサーリンク

鍛錬 419

Linux シェルスクリプト,シェルスクリプト中の行番号を表示してデバッグする

シェルスクリプト中の行番号を表示してデバッグするには、LINENO を使用します。

関連記事:Linux シェル,シェルスクリプトのデバッグを行う
 
使用方法は、以下に示す通りです。

$LINENO
スポンサーリンク

bash のバージョン

以下は、私のPC環境におけるbashのバージョンです。

関連記事:Linux,bash のバージョンを確認する

***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ bash --version
GNU bash, バージョン 4.4.19(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2016 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL バージョン 3 またはそれ以降 <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
スポンサーリンク

シェルスクリプト

以下は、行番号を出力するシェルスクリプト、get_lineno.sh です。

今回は3箇所(3行目、11行目、19行目)の行番号を出力しています。

#!/bin/bash

echo "debug:line($LINENO)"

str_1="AAA"
str_2="BBB"
str_3="CCC"
str_4="DDD"
str_5="EEE"

echo "debug:line($LINENO)"

echo "$str_1"
echo "$str_2"
echo "$str_3"
echo "$str_4"
echo "$str_5"

echo "debug:line($LINENO)"
スポンサーリンク

実行結果

以下は、シェルスクリプト get_lineno.sh を実行しています。

***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./get_lineno.sh
debug:line(3)
debug:line(11)
AAA
BBB
CCC
DDD
EEE
debug:line(19)

 
上記に示した通り、行番号(3行目、11行目、19行目)を出力することができました。

タイトルとURLをコピーしました