Il seguente semplice script Perl elencherà il contenuto di una directory, con la directory elencata come argomento per lo script. In che modo, su un sistema Linux posso acquisire errori di autorizzazione negati? Attualmente se questo script viene eseguito su una directory a cui l'utente non ha permessi di lettura, non accade nulla nel terminale.Come ottengo gli errori di autorizzazione negati dall'operatore glob?
#!/bin/env perl
use strict;
use warnings;
sub print_dir {
foreach (glob "@_/*")
{print "$_\n"};
}
print_dir @ARGV
Quello che stai chiedendo sarebbe un comportamento atipico da un 'glob'. 'stat' può dirti se hai accesso alla directory. –
Capisco che glob non abbia consapevolezza delle autorizzazioni dell'utente, ma presumo che la shell restituisca un errore allo script ma non viene stampato, non è corretto? Sono interessato a come rilevare l'errore dalla shell e stamparlo. – GL2014
Vedo cosa intendi ora, ho appena provato echo/root/* e non restituisce un errore nella shell. Grazie. – GL2014