È possibile chiamare la funzione readlink(2)
, che inserirà il nome collegato in un buffer.
Si noti che il risultato ha una lunghezza (memorizzata nel valore restituito) anziché essere terminata NUL. Quindi se vuoi usarlo come una stringa, aggiungi un NUL tu stesso.
La maggior parte dei linguaggi di script/di livello superiore, come perl o python, fornirà un wrapper readlink che converte nel solito tipo di stringa appropriato per la lingua, in modo tale da non essere infastidito da dettagli come la terminazione NUL.
fonte
2011-01-01 01:27:16
Da quale linguaggio di programmazione si desidera eseguire questa operazione? –
La chiamata di sistema sottostante è 'readlink (2)'. Come notato in una delle risposte, il comando diretto da usare è 'readlink (1)' su alcuni sistemi (GNU e parenti). Su altri sistemi - HP-UX, Solaris, AIX - l'approccio più vicino è probabilmente 'ls -l', ma sii consapevole dei problemi se il nome del percorso nel collegamento contiene newline o altri caratteri strani. –