Respostas:
Baseado em Como verificar se dois diretórios ou arquivos pertencem ao mesmo sistema de arquivos ( /unix// ):
Em um script de shell no Linux, isso pode ser feito com stat :
stat -c "%d" /path # returns the decimal device number
Então você pode:
file1=$(stat -c "%d" /path/file1)
file2=$(stat -c "%d" /path/file2)
e então compare.
Você também pode escrever assim:
if [ $(stat -c "%d" /path/file1) -eq $(stat -c "%d" /path/file1) ]
then
# mv sentence
fi
Outra opção. Também retirado da pergunta Stackexchange :
if [[ $(df -P /path/file1 | tail -1) = $(df -P /path/file2 | tail -1) ]]
then
# echo "same filesystem"
# mv sentence
fi
$(...)vez de `...`. O último é preterido em favor do primeiro.
statme diz que às vezes é complicado, pelo menos com o SunOS. Mas sendo Linux, espero que seja compatível. Com o meu Ubuntu 12 está tudo bem.
%dgera valores diferentes para diferentes diretórios (até a mesma partição) tente com o seu /e/tmp