Tips en Trucs 2023

Bestandseigenschappen opvragen met stat

De stat opdracht, opgenomen in het GNU coreutils pakket, geeft een verscheidenheid aan metadata, inclusief bestandsgrootte, inode locatie, toegangspermissies, aanmaak- en wijzigingstijden over bestanden en bestandssystemen. Het is een handige manier om informatie te verzamelen waarvoor normaal gesproken verschillende opdrachten nodig zijn.

In de meeste Linux distributies is de stat opdracht standaard geïnstalleerd, omdat het deel uitmaakt van een kernpakket hulpprogramma's dat meestal standaard wordt meegeleverd met Linux-distributies.

Bestandseigenschappen weergeven met stat

Stat geeft begrijpelijke informatie over een specifiek bestand of map:

dany@pindabook:~> stat Afbeeldingen/Achtergrond.jpg 
  Bestand: Afbeeldingen/Achtergrond.jpg
  Grootte: 385055       Blokken: 760          IO-blok: 4096   normaal bestand
Apparaat: 807h/2055d   Inode: 524380       Koppelingen: 1
Toegang: (0644/-rw-r--r--)   UID: ( 1000/    dany)   GID: (  100/   users)
Toegang:   2023-01-29 18:11:11.084830988 +0100
Gewijzigd: 2023-01-29 18:10:13.563081598 +0100
Veranderd: 2023-01-29 18:10:13.563081598 +0100
Ontstaan:  2020-08-26 19:51:43.806480337 +0200

Het is misschien makkelijk te lezen, maar het is nog steeds veel informatie. Hier is wat stat behandelt:

Beknopte informatie

Voor mensen die vertrouwd zijn met de uitvoer, of de uitvoer willen ontleden met andere programma's zoals awk, is er de optie --terse (afgekort -t), die de uitvoer opmaakt zonder koppen of regeleinden:

dany@pindabook:~> stat --terse Afbeeldingen/Achtergrond.jpg 
Afbeeldingen/Achtergrond.jpg 385055 760 81a4 1000 100 807 524380 1 0 0 1675012271 1675012213 1675012213 1598464303 4096

Het uitvoerformaat zelf bepalen

Je kunt een eigen formaat voor de uitvoer definiëren met de optie --printf en een syntaxis die lijkt op printf. Elke eigenschap dat door stat wordt gerapporteerd heeft een plaatshouder (%n voor bestandsnaam, %A voor bestandsrechten, enzovoort), zodat je kunt kiezen wat je in een rapport wilt zien.

dany@pindabook:~> stat --printf="%n\n%A\n" Afbeeldingen/Achtergrond.jpg 
Afbeeldingen/Achtergrond.jpg
-rw-r--r--
dany@pindabook:~> stat --printf="Naam: %n\nAangepast op: %y\n" Afbeeldingen/Achtergrond.jpg 
Naam: Afbeeldingen/Achtergrond.jpg
Aangepast op: 2023-01-29 18:10:13.563081598 +0100

Hier zijn enkele veel voorkomende plaatshouders:

Een volledige lijst van plaatshouders is beschikbaar in de stat man pagina en de coreutils info pagina's.

Samenvatting

Als je ooit geprobeerd hebt de uitvoer van ls -l te ontleden, dan zul je de flexibiliteit van de stat opdracht waarderen. Je hebt niet altijd elk stukje van de standaard informatie die stat geeft nodig, maar de opdracht is van onschatbare waarde als je sommige of alle informatie nodig hebt. Of je nu de uitvoer in het standaard formaat leest, of je eigen queries maakt, de stat opdracht geeft je eenvoudig toegang tot de gegevens over je gegevens.

Stat

STAT

NAAM
SAMENVATTING
BESCHRIJVING
AUTEUR
RAPPORTEREN VAN BUGS
COPYRIGHT
ZIE OOK
VERTALING

NAAM

stat − status van bestanden of bestandssystemen tonen

SAMENVATTING

stat [OPTIE]... [BESTAND]...

BESCHRIJVING

Toont de status van een bestand (of van een bestandssysteem).

Een verplicht argument bij een lange optie is ook verplicht voor de korte optie.
−L
, −−dereference

symbolische koppelingen volgen

−f, −−file−system

status tonen van bestandssysteem i.p.v. van bestand

−−time=SOORT

specificeer hoe gebufferde attributen gebruikt moeten worden; nuttig voor bestandssystemen op afstand. Zie SOORT hieronder

−c −−format=OPMAAK

te gebruiken OPMAAK in plaats van de standaardopmaak; elk gebruik van OPMAAK met nieuwe regel afsluiten

−−printf=OPMAAK

als −−format, maar backslash−codes interpreteren, en geen automatische nieuwe regel toevoegen; als u een nieuwe regel wilt, voeg dan \n toe in OPMAAK

−t, −−terse

de informatie in beknopte vorm tonen

−−help

toon de helptekst en stop

−−version

toon programmaversie en stop

Het −−chached SOORT argument kan zijn; always, never, of default. ‘always‘ zal gebufferde attributen gebruiken mits beschikbaar, ‘never‘ zal trachten te synchroniseren met de recentste attributen en ‘default‘ laat dat over aan het onderliggende bestandssysteem.

Geldige opmaakspecificaties voor bestanden (zonder −−file−system) zijn:

%a

toegangsrechten in octale vorm (merk op ’#’ en ’0’ printf−vlaggen)

%A

rechten bits en bestandssysteem soort in leesbare vorm

%b

aantal toegewezen blokken (zie %B)

%B

de grootte in bytes van elk blok gerapporteerd door %b

%C

SELinux−beveiligingscontext−tekenreeks

%d

apparaatnummer in decimaal

%D

apparaatnummer in hex

%f

ruwe modus in hex

%F

bestandstype

%g

groeps−ID van eigenaar

%G

groepsnaam van eigenaar

%h

aantal harde koppelingen

%i

inode−nummer

%m

aankoppelpunt

%n

bestandsnaam

%N

aangehaalde bestandsnaam (plus doel bij een symbolische koppeling)

%o

hint voor optimale blokgrootte voor invoer/uitvoer

%s

totale grootte, in bytes

%t

hoofdapparaattype in hex (voor apparaatbestanden)

%T

subapparaattype in hex (voor apparaatbestanden)

%u

gebruikers−ID van eigenaar

%U

gebruikersnaam van eigenaar

%w

tijdstip van ontstaan van bestand, of ’−’ als onbekend

%W

tijdstip van ontstaan, in seconden sinds Epoch, of 0 als onbekend

%x

tijdstip van laatste toegang

%X

tijdstip van laatste toegang, in seconden sinds Epoch

%y

tijdstip van laatste gegevenswijziging

%Y

tijdstip van laatste gegevenswijziging, in seconden sinds Epoch

%z

tijdstip van laatste statusverandering

%Z

tijdstip van laatste statusverandering, in seconden sinds Epoch

Geldige opmaakspecificaties voor bestandssystemen zijn:

%a

beschikbare vrije blokken voor niet−systeembeheerders

%b

totaal aantal blokken met gegevens in bestandssysteem

%c

totaal aantal inodes in bestandssysteem

%d

aantal vrije inodes in bestandssysteem

%f

aantal vrije blokken in bestandssysteem

%i

bestandssysteem−ID in hex

%l

maximum lengte van bestandsnamen

%n

bestandsnaam

%s

optimale grootte van transportblok

%S

fundamentele blokgrootte (voor blokaantallen)

%t

bestandssysteemtype in hex

%T

bestandssysteemtype in leesbare vorm

−−terse is equivalent met het onderstaande FORMAAT:

%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %W %o %C

−−terse −−file−system is equivalent met het onderstaande FORMAAT:

%n %i %l %t %s %S %b %f %a %c %d

Opmerking: Uw shell kan een eigen versie van stat hebben, die gewoonlijk prevaleert boven de hier beschreven versie. Kijk in de documentatie van uw shell voor details over de ondersteunde opties.

AUTEUR

Geschreven door Michael Meskes.

RAPPORTEREN VAN BUGS

Online hulp bij GNU coreutils: <https://www.gnu.org/software/coreutils/>
Meld alle vertaalfouten op <https://translationproject.org/team/nl.html>

COPYRIGHT

Copyright © 2020 Free Software Foundation, Inc. Licentie GPLv3+: GNU GPL versie 3 of later <https://gnu.org/licenses/gpl.html>.
Dit is vrije software: u mag het vrijelijk wijzigen en verder verspreiden. Deze software kent GEEN GARANTIE, voor zover de wet dit toestaat.

ZIE OOK

stat(2), statfs(2), statx(2)

Volledige documentatie op: <https://www.gnu.org/software/coreutils/stat>
of lokaal via: info '(coreutils) stat invocation'

VERTALING

De Nederlandse vertaling van deze handleiding is geschreven door Mario Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>

Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-dutch@lists.debian.org.