Eles não têm garantia disso. É possível que /foo/oldPath
seja um ponto de montagem.
Isso pode, no entanto, ser facilmente verificado executando mount | grep 'on /foo/oldPath'
Nenhuma saída deve indicar que o diretório oldPath
não é um ponto de montagem.
Você precisará ser mais cuidadoso se estiver usando diretórios aninhados, já que você pode ter um ponto de montagem em qualquer lugar.
Não sei se isso é automatizado, mas é importante notar que o terceiro campo da montagem (separado por espaço) é o ponto de montagem de cada linha, portanto, utilizar cut -d ' ' -f 3
pode ser usado para extrair o caminho ( Se você precisar verificar se não é apenas uma subseqüência de outro ponto de montagem, como /foo/oldPath/nested/mountPoint
)
Se você gostaria de traduzir isso em código C / C ++, você pode usar system("mount | grep 'on /foo/oldPath'")
, mas não vou jurar por isso. Você pode ter mais sorte no StackOverflow para mais detalhes de implementação, se precisar.