9 praktische voorbeelden van het Linux-datumcommando

9 praktische voorbeelden van het Linux-datumcommando

Maak kennis met de Linux-datumopdracht. Nee, je kunt er geen romantische avond van krijgen. Maar het kan de datum opmaken bovenaan een liefdesbrief die u in de terminal hebt geschreven. Goed genoeg? Laten we beginnen.





Terwijl je in Bash aan het scripten bent, zul je onvermijdelijk een datum of tijd moeten afdrukken, en die datum of tijd zal vaak in een specifiek formaat moeten zijn om aan de vereisten van andere functies te voldoen. Dat is wanneer het date-commando in het spel komt.





Zoals je zult zien, is het date-commando in Linux zowel eenvoudig als veelzijdig, wat betekent dat het allerlei soorten invoer accepteert en datums genereert in een groot aantal formaten. Het heeft ook andere speciale functies voor verschillende tijdgerelateerde computertaken. De opties en syntaxis van de leerdatum zullen je zeker vaardiger maken in scripting, en misschien punctueler.





Datum Commando Basissyntaxis

De basissyntaxis voor het date-commando is als volgt:

date [OPTION]... [+FORMAT]

Dat betekent dat na binnenkomst datum , kunt u een optie invoeren, zoals -NS of -s , om een ​​bepaalde functie aan te roepen, die we hieronder zullen uitleggen.



Je kunt die ook opvolgen met opmaakreeksen, die altijd beginnen met a + karakter. Die tekenreeksen hebben specifieke opmaaktekens, ook hieronder vermeld, om de uitvoer te definiëren.

Linux datum Commando Praktische Voorbeelden

U kunt het date-commando op verschillende manieren gebruiken. Laten we eens kijken naar de meest voorkomende en nuttige use-cases van hetzelfde.





1. Verkrijg de huidige datum en tijd

U kunt de huidige lokale datum en tijd in de standaardnotatie krijgen door alleen de datumopdracht door te geven.

$ date
Mon 19 Apr 2021 12:41:17 PM CDT

Zoals u kunt zien, geeft datum u de relevante datum- en tijdinformatie in een eenvoudig en voorspelbaar formaat.





2. Krijg een datum in het verleden of in de toekomst

Laten we zeggen dat je in je script de tijd en datum moet berekenen die precies een week vanaf nu is. Het date-commando heeft u gedekt. Geef deze opdracht met behulp van de -NS optie om gedetailleerde informatie over toekomstige datums te krijgen:

$ date -d 'next week'
Tue 27 Apr 2021 05:21:07 PM CDT

De -NS optie, een afkorting voor datum, is waar de datumopdracht echt uitblinkt. Het accepteert een verscheidenheid aan aangepaste datumreeksen; ze kunnen technisch zijn, zoals: 20200315 , 15-03-20 , of leesbaar als 15 mrt 2020 . Maar je kunt ook relatieve termen gebruiken, zoals morgen , gisteren , volgende zondag , en meer. Speel ermee en zie hoe de datum verschillende invoerreeksen interpreteert.

3. Een datum opmaken

Het is je misschien opgevallen in de vorige twee voorbeelden, dat de datum standaard is ingesteld op een zeer specifieke tijdnotatie. Dus wat als je het in een ander formaat nodig hebt?

U kunt uw uitvoer op dezelfde manier opmaken als het printf-commando . U kunt bijvoorbeeld het huidige jaar afdrukken met dit commando:

beste voicemail-app voor Android 2018
date +'Year: %Y'

De + geeft aan dat u een opgemaakte string wilt, en wat daarna verschijnt in de citaat merken, datum zal verwerken en formatteren voor de uitvoer.

Hier is een lijst met de opmaaktekens die u waarschijnlijk zult gebruiken:

Teken opmakenUitgang:
%HUur (00-24)
%LUur (01-12)
%MMinuut (00-59)
%STweede (00-60)
%PAM of PM
%TOTVolledige naam weekdag (bijv. zondag)
%totAfgekorte naam van de weekdag (bijv. Zon)
%inWeekdagnummer (0-6)
%NSDag van de maand (01-31)
%JDag van het jaar (001-366)
% BVolledige naam van de maand (bijv. januari)
% BMaand afgekorte naam (bijv. Jan)
%mMaandnummer (01-12)

U kunt een volledige lijst met opmaaktekens krijgen met behulp van de --helpen optie in de terminal.

date --help

4. Krijg de dag van de week

Een veel voorkomend en praktisch gebruik van datumnotatie is het verkrijgen van de dag van de week voor een bepaalde datum. Als u bijvoorbeeld wilt controleren op welke dag van de week 4 november 1995 viel, voert u een opdracht in die lijkt op deze:

$ date -d '1996-04-11' +'%A'
Friday

De -NS optie geeft aan dat u een specifieke datum wilt, de '1996-04-11' string geeft aan welke datum je wilt, en de + '% A' opmaak geeft aan dat u de dag van de week in de uitvoer wilt. Onthoud dat de datumreeks in veel formaten kan zijn, niet alleen de hier gespecificeerde.

5. Krijg gecoördineerde universele tijd

Door het uitgeven van de -u vlag, kunt u de huidige tijd krijgen in Coordinated Universal Time (UTC).

$ date -u
Wed 21 Apr 2021 12:46:59 PM UTC

6. Voer de lokale tijd uit in een andere tijdzone

Als u een datum in een andere tijdzone nodig heeft, kunt u dit doen door de TZ = omgevingsvariabele vóór het date-commando.

U kunt bijvoorbeeld de huidige datum en tijd in Mountain Standard Time (MST) zien met de volgende opdracht:

$ TZ=MST date
Tue 20 Apr 2021 03:45:29 PM MST

Voor uw doeleinden, gewoon vervangen: MST met de initialen voor de tijdzone die u verkiest. U kunt er ook voor kiezen om UTC-notatie te gebruiken. Om bijvoorbeeld dezelfde tijdzone te krijgen, vervangt u MST met GMT+7 .

Bovendien kunt u een continent en een grote stad een naam geven om de tijd van de lokale tijd van die bepaalde stad te krijgen. Bijvoorbeeld:

$ TZ=America/Phoenix date
Tue 20 Apr 2021 03:45:29 PM MST

7. Krijg de laatste wijzigingstijd van een bestand

Als u bijvoorbeeld back-ups maakt, moet u vaak de laatste wijzigingsdatum van een bestand weten. Dit doe je door de -R optie en het benoemen van een bestand.

$ date -r /etc/shadow
Wed 14 Apr 2021 07:53:02 AM CDT

U kunt de tijdstempels van een bestand wijzigen met het aanraakcommando in Linux ook.

8. Epochtijd uitvoeren en converteren

U kunt het aantal seconden berekenen sinds het Unix-tijdperk met het volgende commando:

$ date +%s
1618955631

Je kunt het proces ook omkeren en Unix-tijd converteren naar een voor mensen leesbaar formaat door het gebruik van de -NS optie en @ karakter.

$ date -d @1618955631
Tue 20 Apr 2021 04:53:51 PM CDT

Het berekenen van de Unix-tijd is handig als je een exacte seconde nodig hebt die andere apparaten zeker gesynchroniseerd houdt.

9. Tijdelijk de systeemtijd instellen

U kunt uw systeemklok vanaf de terminal wijzigen met het datumcommando door de -s argument gevolgd door de gewenste tijd. U kunt de systeemklok bijvoorbeeld instellen op 24 uur in de toekomst met het volgende commando:

date -s 'tomorrow'

Merk op dat je sudo-rechten nodig hebt om deze opdracht door te geven. Bovendien zal de wijziging waarschijnlijk niet blijvend zijn (wat betekent dat uw klok teruggaat naar de vorige keer na een herstart), omdat de meeste distributies andere hulpprogramma's gebruiken om uw systeemklok te beheren die de wijziging bij het opstarten overschrijven.

Linux-datumopdracht uitgelegd

Net als in het leven kun je in Linux niet aan de tijd ontsnappen. Daarom is het van cruciaal belang dat je begrijpt hoe je het moet formatteren en gebruiken, via het date-commando. Een ding dat je zeker tegenkomt in Linux-bestandsbeheer, zijn de verschillende tijdstempels die bestanden bij zich dragen.

Deel Deel Tweeten E-mail Tijdstempels van Linux-bestanden begrijpen: mtime, ctime en atime

Wil je meer weten over hoe Linux veranderingen in een bestand bijhoudt? Dit is wat u moet weten over Linux-bestandstijdstempels.

galaxy s7 sms-berichten hardop lezen
Lees volgende Gerelateerde onderwerpen
  • Linux
  • Linux-opdrachten
Over de auteur Jordan Gloor(51 artikelen gepubliceerd)

Jordan is een stafschrijver bij MUO met een passie voor het toegankelijk en stressvrij maken van Linux voor iedereen. Hij schrijft ook handleidingen over privacy en productiviteit.

Meer van Jordan Gloor

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren