Debian Policy 10.4 (Files/Scripts) notes that:
When scripts are installed into a directory in the system PATH, the
script name should not include an extension such as .sh or .pl that
denotes the scripting language currently used to implement it.
sg3-utils includes /usr/bin/rescan-scsi-bus.sh, which violates that
recommendation in the policy.
Note however, that the package "scsitools" already includes a command
named "rescan-scsi-bus" under /sbin/rescan-scsi-bus, which would
conflict with sg3-utils if rescan-scsi-bus.sh would be renamed to
rescan-scsi-bus. Besides being quite confusing, should one happen to
install both packages, it turns out that both of these scripts seem to
be derived from a common ancestor. Maybe a solution can be found
between the package maintainers such that Debian ends up with only one
version of that script.