sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #62665
Re: FW: Re: [TEKNIK] Problemer med rettigheder på system filer.
On Tue, 15 Apr 2003, Lasse Taul Bjerre wrote:
> >
> >#!/usr/bin/perl -n
> >
> >my ($symbolic_mode, $name) = /^(.{10})[^/]*(.*)/;
> >
> >$_ = $symbolic_mode;
> >
> >my $numeric_mode = 0;
> >$numeric_mode |= 04000 if /^...[sS]......$/;
> >$numeric_mode |= 02000 if /^......[sS]...$/;
> >$numeric_mode |= 01000 if /^.........[tT]$/;
> >$numeric_mode |= 00400 if /^.r........$/;
> >$numeric_mode |= 00200 if /^..w.......$/;
> >$numeric_mode |= 00100 if /^...[xs]......$/;
> >$numeric_mode |= 00040 if /^....r.....$/;
> >$numeric_mode |= 00020 if /^.....w....$/;
> >$numeric_mode |= 00010 if /^......[xs]...$/;
> >$numeric_mode |= 00004 if /^.......r..$/;
> >$numeric_mode |= 00002 if /^........w.$/;
> >$numeric_mode |= 00001 if /^.........[xt]$/;
> >
> >chmod $numeric_mode, $name
> >__END__
> >
> >Burde umidelbart gøre tricket, antaget at alle inddatalinjer giver
> >absolutte filnavne og der ikke gives noget spøjst inddata.
>
> Nu har jeg haft lejlighed til at sætte en test maskine op hvor jeg kan lege lidt med det script du lavede til mig. Umiddelbart giver det dog følgende "fejlmeddelelse":
>
> Unmatched [ before HERE mark in regex m/^(.{10})[ << HERE ^/ at /root/fixPerm.sh line 3.
Prøv at rette linie 3 til:
my ($symbolic_mode, $name) = /^(.{10})[^\/]*(.*)/;
Det er bare en enkel \ som skal indsættes.
Med venlig hilsen
Ole
References