In realtà volevo che il termine del collegamento venisse rinominato con l'estensione conservata
altrimenti il Finder non riconoscerebbe il tipo di file.
quindi ho usato la risposta di Daniel (grazie per questo) e l'ho cambiata un po '
for f in "$@"
do
dir=$(dirname "$f")
filename=$(basename "$f")
extension=$([[ "$filename" = *.* ]] && echo ".${filename##*.}" || echo '')
filename="${filename%.*}"
ln "$f" "${dir}/$filename Hardlink$extension"
done
EDIT: aggiunto quello che penso sia il miglior codice di gestione dell'estensione - dovrebbe essere vuoto se non è presente alcuna estensione. Scusa, non sono bravo a scrivere script, quindi ti preghiamo di condividere eventuali correzioni che ritieni necessarie.