ファイルから入力を取得して、ユーザーが特定のプログラムの使用を許可されているかどうかを判断するループを作成しています。
#!/bin/bash
boole=false
echo "Username: "
read username
echo "debug0"
for((line=1; $boole=false; line++)); do
echo "debug.5"
auth=`head -n $line users | tail -n $line`
echo "debug1"
if [ $username = $auth ]; then
echo "debug2"
echo "authentication success"
read
exit 0
fi
if [ $auth = "#end" ]; then
echo "debug3"
echo "authentication failed"
read
exit 0
fi
done
echo "skip everything"
出力は
Username:
admin
debug0
skip everything
ユーザーのファイルには
root
admin
...
#end
#end
boole
ループを終了するように指示する必要があります
これは単なるデバッグ段階であるため、実際にプログラムを実行するわけではなく、ユーザーが使用を許可されているかどうかを通知するだけです。