6.2. Sprawdzanie uprawnień dostępu do plików

Problem

Chcemy sprawdzić, na które z operacji w stosunku do danego pliku — zapis, odczyt i (w systemach uniksowych) wykonywanie — zezwoli nam system operacyjny.

Rozwiązanie

Uprawnienia użytkownika do odczytu pliku, zapisu do pliku i wykonywania zawartości pliku jako programu sprawdzane są przez predykaty (odpowiednio) File.readable?, File.writable? i File.executable?.

File.readable?('/bin/ls')                # => true
File.readable?('/etc/passwd-')           # => false

filename = 'test_file'
File.open(filename, 'w') {}
File.writable?(filename)                 # => true
File.writable?('/bin/ls')                # => false

File.executable?('/bin/ls')              # => true
File.executable?(filename)               # => false

Dyskusja

Testowanie uprawnień dostępu do plików ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.