forked from ungleich-public/cdist
Resolve SC2012.
This commit is contained in:
parent
ec186673bf
commit
0458f66c96
2 changed files with 25 additions and 20 deletions
|
@ -33,8 +33,7 @@ destination_dir="${destination%/*}"
|
|||
case "$type" in
|
||||
symbolic)
|
||||
cd "$destination_dir" || exit 1
|
||||
# TODO SC2012: use readlink or something?
|
||||
source_is=$(ls -l "$destination" | sed 's/.*-> //g')
|
||||
source_is=$(readlink "$destination")
|
||||
if [ -h "$destination" ]; then
|
||||
# ignore trailing slashes for comparison
|
||||
if [ "${source_is%/}" = "${source%/}" ]; then
|
||||
|
@ -53,9 +52,13 @@ case "$type" in
|
|||
echo sourcemissing
|
||||
exit 0
|
||||
fi
|
||||
# TODO SC2012: use stat?
|
||||
# Currently not worth the effor to change it, stat is not defined by POSIX
|
||||
# and different OSes has different implementations for it.
|
||||
# shellcheck disable=SC2012
|
||||
destination_inode=$(ls -i "$destination" | awk '{print $1}')
|
||||
# TODO SC2012: use stat?
|
||||
# Currently not worth the effor to change it, stat is not defined by POSIX
|
||||
# and different OSes has different implementations for it.
|
||||
# shellcheck disable=SC2012
|
||||
source_inode=$(ls -i "$source" | awk '{print $1}')
|
||||
if [ "$destination_inode" -eq "$source_inode" ]; then
|
||||
echo present
|
||||
|
|
|
@ -24,24 +24,26 @@
|
|||
destination="/$__object_id"
|
||||
|
||||
if [ ! -e "$destination" ]; then
|
||||
echo none
|
||||
echo none
|
||||
elif [ -h "$destination" ]; then
|
||||
echo symlink
|
||||
echo symlink
|
||||
elif [ -f "$destination" ]; then
|
||||
type="$(cat "$__object/parameter/type")"
|
||||
case "$type" in
|
||||
hard)
|
||||
# TODO SC2012: use stat?
|
||||
link_count=$(ls -l "$destination" | awk '{ print $2 }')
|
||||
if [ "$link_count" -gt 1 ]; then
|
||||
echo hardlink
|
||||
exit 0
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
echo file
|
||||
type="$(cat "$__object/parameter/type")"
|
||||
case "$type" in
|
||||
hard)
|
||||
# Currently not worth the effor to change it, stat is not defined by POSIX
|
||||
# and different OSes has different implementations for it.
|
||||
# shellcheck disable=SC2012
|
||||
ink_count=$(ls -l "$destination" | awk '{ print $2 }')
|
||||
if [ "$link_count" -gt 1 ]; then
|
||||
echo hardlink
|
||||
exit 0
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
echo file
|
||||
elif [ -d "$destination" ]; then
|
||||
echo directory
|
||||
echo directory
|
||||
else
|
||||
echo unknown
|
||||
echo unknown
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue