chmod - check

E

electren

Jungspund
Hi,

gibt es ein Befehl mit dem ich die Rechte einer Datei abfragen kann - so das als Rückgabe z.b. 666 kommt und nicht -rw-r--r-- ??

Ist dafür gedacht, die chmods von bestimmten Dateien zu überprüfen und bei Bedarf anzupassen. D.h. es muss eine If-Abfrage anschließend gemacht werden.
Da ich das in ANT umsetze, darf kein Zeilenumbruch beim Rückgabewert sein...

Geht das?

Grüße ele
 
gibt es ein Befehl mit dem ich die Rechte einer Datei abfragen kann - so das als Rückgabe z.b. 666 kommt und nicht -rw-r--r-- ??

Afaik nicht.

MFG

Dennis
 
DennisM schrieb:
Afaik nicht.

MFG

Dennis
ja - glaub ich mittlerweile auch...

muss ich halt so damit auskommen...

hab mir jetzt folgenden command gebastelt:
Code:
"echo `ls -l /xxx/xxx/temp/heib/sedtest/test|cut -c1-10`"
nur ich bekomm den carriage return nicht raus...

weder mit
Code:
"echo \r `ls -l /xxx/xxx/temp/heib/sedtest/test|cut -c1-10`"

noch mit
"echo -n `ls -l /xxx/xxx/temp/heib/sedtest/test|cut -c1-10`"

Weiß jemand wie ich dieses Zeichen am Schluss rausbekomm?
Würde es gehn, mit awk rauszuschneiden?
 
Kurze Frage: Wofür brauchst du es. Willst du die oktalen Werte in einem Script weiterverarbeiten, oder willst du es dir nur anzeigen lassen?
 
grey schrieb:
Kurze Frage: Wofür brauchst du es. Willst du die oktalen Werte in einem Script weiterverarbeiten, oder willst du es dir nur anzeigen lassen?
Für ein Prüfung ob chmod richtig gesetzt ist...

Habs aber grad rausgefunden:
Code:
echo `ls -l /xxx/xxx/temp/heib/sedtest/test|cut -c1-10`\\c

das \\c muss zum schluss...
manual mal genauer lesen - und man weiß sofort bescheid :rtfm:
 
electren schrieb:
Hi,

gibt es ein Befehl mit dem ich die Rechte einer Datei abfragen kann - so das als Rückgabe z.b. 666 kommt und nicht -rw-r--r-- ??

Ist dafür gedacht, die chmods von bestimmten Dateien zu überprüfen und bei Bedarf anzupassen. D.h. es muss eine If-Abfrage anschließend gemacht werden.
Da ich das in ANT umsetze, darf kein Zeilenumbruch beim Rückgabewert sein...

Geht das?

Grüße ele

Ja, das geht.
Einmal gibt es find mit -printf
Hier liste ich nur die oktalen Rechte und Dateiname, den kannst du aber auch weglassen.
Code:
 find /path -type f -printf "%a %f "
man find ;)

Dann gibt es stat
Du willst alles in einer Zeile ohne Dateiname?
Code:
for i in $(ls -1); do echo -n "$(stat -c"%a " $i)"; done

Gruß Wolfgang
 
Code:
 find /path -type f -printf "%a %f "
man find ;)

moin
[Klugscheiß]
ich würd nur statt "%a" "%m" nehmen :oldman
[/klugscheiß]

btw. das find das kann wusste ich bis jetzt noch gar nicht - Danke Wolfgang

Code:
find /tmp -type f -printf "%m "
 
michael77 schrieb:
moin
[Klugscheiß]
ich würd nur statt "%a" "%m" nehmen :oldman
[/klugscheiß]

btw. das find das kann wusste ich bis jetzt noch gar nicht - Danke Wolfgang

Code:
find /tmp -type f -printf "%m "

Richtig, Tippfehler von mir. Bei Find muss es natürlich %m und bei stat %a sein.
Aber die Manpage bringt es ans Licht. ;)
Danke für den Hinweis.

Gruß Wolfgang
 

Ähnliche Themen

[HowTo] NVidia und 3D unter SuSE/openSUSE

C++ Klausur durchgefallen

Server-Monitoring mit RRDTool

Zurück
Oben