# HG changeset patch # User Franz Glasner # Date 1508689295 -7200 # Node ID 6b77068e7ec83ef5a0364170f104bb34237521b5 # Parent 208545b92d432e588bfb0249baec4f9d46d3d9c0 Introduced option handling with getopts: implemented a "v" option (verbose) diff -r 208545b92d43 -r 6b77068e7ec8 bin/check-ports --- a/bin/check-ports Sun Oct 22 18:06:32 2017 +0200 +++ b/bin/check-ports Sun Oct 22 18:21:35 2017 +0200 @@ -76,6 +76,23 @@ return 2 } +verbose_flag="" + +while getopts "v" _arg ; do + case ${_arg} in + v) + verbose_flag=1 + ;; + \?) + exit 2 + ;; + *) + echo "option handling failed" >&2 + exit 2 + ;; + esac +done + installed_packages=$(pkg query '%n') installed_data="$(pkg query '%n %v %R' $installed_packages)" @@ -86,7 +103,9 @@ while read lfqp llabel ldescr ; do _installed_name=${lfqp%-*} _installed_version=${lfqp##*-} - #echo $lfqp ${_installed_name} ${_installed_version} ${llabel} + if [ -n "${verbose_flag}" ] ; then + echo "${lfqp} (${repository})" + fi if ! assert_local_version ${_installed_name} ${_installed_version} ; then echo "Assertion failed: $lfqp ${_installed_name} ${_installed_version} ${llabel}" >&2 exit 1 @@ -95,7 +114,9 @@ get_remote_repo_data ${FREEBSD_REPO} ${_installed_name} get_repo_for_package ${_installed_name} if [ \( ${llabel} != '?' -a ${llabel} != '=' \) -o \( ${remote_FreeBSD_label} != '?' -a ${remote_FreeBSD_label} != '=' \) -o \( ${remote_LocalRepo_label} != '?' -a ${remote_LocalRepo_label} != '=' \) ] ; then - echo "${lfqp} (${repository})" + if [ -z "${verbose_flag}" ] ; then + echo "${lfqp} (${repository})" + fi echo " ${ldescr}" echo " FreeBSD: ${remote_FreeBSD_descr}" if [ ${remote_LocalRepo_label} != '?' ] ; then