#!/bin/sh # 2003-2006, 2009 (c) Etersoft www.etersoft.ru # Author: Vitaly Lipatov <lav@etersoft.ru> # Public domain # # �������, � ������ ������ ��������� ��������� ����, ��������� ����� which # ���������: # - �������� ���� # TODO not -i only, we need any key if [ "$1" = "-h" ]; then echo "rpmqf - the same as rpm -qf" exit 0 fi if [ "$1" = "-i" ]; then ARG=$1 shift fi # use and modify TOFILE recursively real_file() { local LINKTO1 LINKTO local TOFILE # get canonical path if [ -e "$1" ] ; then TOFILE=$1 else TOFILE=`which $1 2>/dev/null || echo $1` if [ "$TOFILE" != "$1" ] ; then echo "Note: $1 is placed as $TOFILE" fi fi # get value of symbolic link if [ -L "$TOFILE" ] ; then LINKTO=`readlink "$TOFILE"` echo "Note: $TOFILE is link to $LINKTO" real_file "$LINKTO" fi FULLFILEPATH=`readlink -f $TOFILE` } real_file "$1" rpm -qf $ARG "$FULLFILEPATH"