Advertentie

Denk je dat werken op de opdrachtregel complex, ouderwets en verouderd is? Denk nog eens na.

In Linux is de opdrachtregel een weergaloze tool die complexe taken met weinig moeite uitvoert. Probeer bijvoorbeeld een GUI te gebruiken (Grafische gebruikersinterface) om elk bestand te verwijderen waarvan de naam eindigt op .tmp en zijn gemaakt in de afgelopen 3 maanden. Leer vervolgens hoe u dezelfde taak kunt uitvoeren via de opdrachtregel. U zult verrast zijn door het gemak en de snelheid waarmee u deze taak via de opdrachtregel kunt uitvoeren, vooral als u het regelmatig moet doen.

Je kunt veel geweldige dingen doen met opdrachten in Linux en het is echt niet moeilijk om te leren. Als u helemaal nieuw bent op de Linux-opdrachtregel, moet u eerst vertrouwd raken met CLI-navigatie (Command Line Interface), samen met enkele basisbewerkingen voor bestanden / mappen. En dat is precies wat we in dit artikel zullen bespreken.

Als je absoluut nieuw bent voor Linux, probeer dan onze te lezen

instagram viewer
Linux-gids Aan de slag met Linux en UbuntuJe bent geïnteresseerd in het overschakelen naar Linux... maar waar begin je? Is uw pc compatibel? Werken uw favoriete apps? Hier is alles wat u moet weten om aan de slag te gaan met Linux. Lees verder . Leer ook hoe u dat kunt vervang Windows door Linux Van Linux een legitieme Windows-vervanging makenNu Windows 8 een lange schaduw werpt over de pc-industrie en Valve zich inzet om op Linux gebaseerde gaming-pc's te maken, is er nooit een beter moment geweest om Linux te gaan gebruiken. Voor veel gebruikers is de Linux-desktop ... Lees verder en hoe voer Windows-toepassingen uit op Linux Voer Windows-applicaties uit op Linux (of Mac) met WINE Lees verder .

Leer effectief te navigeren in de Linux-opdrachtregel

Telkens wanneer u een Linux-opdrachtregel opent, begint u bij een directory (meestal uw homedirectory). Dit is uw werkmap totdat u naar een andere map gaat. Voor gebruikers die migreren vanuit Windows, is een map in Linux gelijk aan een map in Windows. Verder is een homedirectory in Linux conceptueel equivalent aan een gebruikersspecifieke map - aanwezig in C: / Documenten en instellingen of C: / Gebruikers - in Windows. Gebruik altijd de om het volledige pad van uw werkmap te zien pwd commando.

01-image-pwd-commando

OPMERKING - De tekst in de aanloop naar en inclusief dollar ($) (of # in sommige gevallen) staat bekend als opdrachtprompt.

De pwd commando uitgevoerd /home/himanshu,wat betekent dat de huidige werkmap is himanshu. Laten we de uitvoer van het pwd-commando in stappen begrijpen:

  • / - De eerste schuine streep naar voren vertegenwoordigt de directory op het hoogste niveau
  • /home - De huis directory is een submap onder de directory op het hoogste niveau
  • /home/himanshu - De himanshu directory is een subdirectory onder de huis directory.

Wijzig de huidige werkdirectory om naar een andere directory te gaan. Dit kan gedaan worden met de CD commando - typ gewoon "cd" gevolgd door de map waarnaar je wilt overschakelen.

01-01-image-cd-commando

Gebruik een punt (.) In plaats van het volledige pad van de huidige werkmap om omlaag te gaan in de huidige mapstructuur (d.w.z. om over te schakelen naar een submap onder de huidige werkmap). Dit bespaart kostbare tijd. Bijvoorbeeld: als de huidige werkmap is /home/himanshu en u wilt overschakelen naar /home/himanshu/Desktop/images je hoeft niet het volledige pad in te typen /home/himanshu/Desktop/images.Geef gewoon het relatieve pad op ./Desktop/images als argument voor CD commando.

01-1-image-cd-commando

Om omhoog te gaan in de huidige directorystructuur, een manier is om de CD commando met volledig pad naar de nieuwe werkmap.

01-02-image-cd-commando

De snellere manier is om achteruit te gaan met ..

01-2-image-cd-commando

Net zoals enkele punt (.) De huidige directory vertegenwoordigt, vertegenwoordigt dubbele punt (..) de vorige directory. Zo, cd ../ ..schakelt u twee mappen terug.

TIP: Als u herhaaldelijk tussen twee mappen moet springen - bijvoorbeeld tussen /home/himanshu en / home / himanshu / Desktop / afbeeldingen - gebruik de CD commando gevolgd door een compleet pad - het is tijdverspilling. In plaats daarvan kun je gewoon gebruiken cd -,die bijna werkt als de "Terug" -knop van uw browser:

01-image-cd-opdracht

TIP: Gebruik de [TAB] -toets om de namen van mappen automatisch aan te vullen. Dit is erg handig bij het schrijven van lange mapnamen. Bijvoorbeeld in plaats van te schrijven /home/himanshu, je kunt gewoon schrijven /home/h. en druk vervolgens op de [TAB] -toets om de shell te verzoeken de bestandsnaam automatisch aan te vullen. Houd er rekening mee dat er soms meerdere mappen zijn die beginnen met 'h' en dat u in die gevallen een lijst met dergelijke mappen te zien krijgt.

01-afbeelding-cd-tabblad

Geef meer en probeer TAB opnieuw.

Leer werken met bestanden en mappen

Zodra de CLI-navigatie duidelijk is, is het volgende belangrijke punt om de basisbewerkingen van bestanden / mappen te leren.

Lijst Directory Inhoud

Gebruik de. Om elk bestand in een directory weer te geven ls commando. Bijvoorbeeld:

09-1-image-ls-commando

De verschillende kleuren (zie uitvoer hierboven) vertegenwoordigen verschillende soorten bestanden in Linux. Enkele van de basiskleuren die u moet kennen, zijn als volgt:

Linux-bestandskleurenOm de inhoud van een andere directory dan de huidige werkdirectory weer te geven, voert u het volledige pad naar die directory in als argument voor de ls commando. Bijvoorbeeld - ls / home / himanshu / Desktop

Afgezien van kleuren (hierboven uitgelegd), kan het bestandstype ook worden geïdentificeerd via de het dossier commando. Bijvoorbeeld, in de snapshot (hieronder weergegeven), de het dossier commando vertelt dat duidelijk uitgang 1 is een tekstbestand.

03-afbeelding-bestand-commando

Inhoud van een bestand weergeven

Gebruik de om de inhoud van een bestand op de opdrachtregel te bekijken kat commando.

04-afbeelding-kat-commando

Soms is het niet mogelijk om het volledige bestand in de opdrachtpromptshell te bekijken. Dit gebeurt wanneer het aantal regels in een bestand veel meer is dan wat shell kan weergeven. Gebruik voor zulke grote bestanden kat [bestandsnaam] | minder .

04-01-afbeelding-zonder-kat

Het symbool | staat bekend als pipe en wordt gebruikt om de uitvoer van een opdracht (als invoer) naar een andere opdracht te leiden. Hier stuurt het de uitvoer van de cat .bashrc commando (als invoer) aan de minder commando - waarmee een gebruiker grote bestanden soepel kan bekijken.

04-02-beeldloze weergave

druk op Enter om de inhoud naar boven te scrollen en q stoppen.

Grootte van een bestand weergeven

Gebruik om de grootte van een bestand te vinden -l optie met de ls commando.

OPMERKING - Bijna elke Linux-opdracht ondersteunt enkele opdrachtregelopties. Deze opties kunnen worden gebruikt om uitvoer in overeenstemming daarmee te produceren. Bijvoorbeeld de ls commando, wanneer uitgevoerd met -l optie, produceert een meer uitgebreide output in vergelijking met wanneer deze wordt uitgevoerd zonder enige optie.

04-1-image-ls-l-commando
Het vijfde veld in de uitvoer (328 in dit voorbeeld) vertegenwoordigt de grootte van het bestand in bytes.

Maak een nieuw bestand of een nieuwe map

Gebruik de om een ​​nieuw bestand te maken aanraken commando.

05-1-beeld-aanraak-commando

De aanraken commando werkt de tijdstempels (Toegang, Wijzigen en Wijzigen) van een bestand bij als het al bestaat. Tijdstempel voor toegang vertegenwoordigt de datum / tijd waarop het bestand voor het laatst is geopend, tijdstempel wijzigen staat voor de datum / tijd wanneer het bestand voor het laatst is gewijzigd en de tijdstempel verandert, geeft de datum / tijd weer waarop de metadata van het bestand voor het laatst waren gewijzigd.

De stat commando kan worden gebruikt om de tijdstempels van een bestand te controleren.

05-1-image-stat-commando

Gebruik de om een ​​nieuwe directory te maken mkdir commando.

05-2-image-mkdir-commando

OPMERKING - Voer altijd het volledige pad in (als argument voor de mkdir commando) terwijl u een nieuwe directory aanmaakt op een andere locatie dan de huidige werkdirectory.

Knip, kopieer en hernoem bestanden

Gebruik de om een ​​bestand te kopiëren cp commando.

cp [bron] [bestemming]

Hier is een voorbeeld dat een bestand kopieert output van huidige directory naar Bureaublad :

05-2-image-cp-commando
Het pad naar de thuismap kan worden vervangen door ~ op de opdrachtregel. Dus de vorige cp commando kan ook worden geschreven als:

05-3-image-cp-commando

Zoals /home/himanshu is de thuismap van een gebruiker, dus deze is vervangen door ~.

TIP - Gebruik cd ~ of gewoon CD om vanaf elke willekeurige plek op de opdrachtregel terug te schakelen naar uw thuismap.

Als je nieuwsgierig bent, hier is waarom ~ is gekozen om de thuismap weer te geven.

Gebruik de om een ​​bestand van de ene map naar de andere te verplaatsen (Windows-equivalent van knippen en plakken) mv commando. De syntaxis is vergelijkbaar met die van de cp commando.

mv [bron] [bestemming]

De mv commando kan ook worden gebruikt om bestanden te hernoemen.

mv [bestaande bestandsnaam] [nieuwe bestandsnaam]

Zoek een bestand of tekst in een bestand

Gebruik de om een ​​bestand in een directory (en de submappen) te zoeken vind commando.

06-image-find-commando

De vind commando - weergegeven in de momentopname (zie hierboven) - doorzoekt de directory /home/himanshu voor alle bestanden met .bin uitbreiding.Merk op dat * een is jokerteken.

Gebruik de om tekst in een bestand te zoeken grep commando.

07-1-image-grep-commando

De grep commando zoekt het bestand frnd.cpp voor regels die de string bevatten #includeen toont het resultaat in output. Merk op dat het trefwoord in het rood wordt weergegeven.

Optie -n kan worden gebruikt met de grep commando om regelnummers in de uitvoer weer te geven.

07-2-image-grep-commando

Gebruik asterisk (om een ​​string binnen alle bestanden in de huidige directory te zoeken) (*) als bestandsnaam.

08-image-grep-commando

* vertegenwoordigt alles en dus de grep commando - getoond in de snapshot (zie hierboven) - zoekt naar de string #include in alle bestanden in de huidige directory.

OPMERKING - Gebruik -R optie samen met de grep commando om te zoeken binnen submappen.

Verwijder bestanden of mappen

Gebruik de om een ​​bestand of een directory te verwijderen rm commando.

rm [bestandsnaam]

Hier is een voorbeeld :

09-0-image-rm-opdracht

Als een bestandsnaam begint met - (bijvoorbeeld -nieuw bestand), gebruik - met de rm commando om het te verwijderen.

09-3-image-rm-commando

Gebruik om een ​​directory te verwijderen rm -r [directorynaam].

10-3-image-rm-opdracht

Man Pages

Je hoeft geen helpgids te downloaden of een boek te kopen om meer te leren over commando's in Linux. Handleidingen voor alle standaardopdrachten zijn vooraf geïnstalleerd met Linux. Voer gewoon de opdracht uit man [opdrachtnaam] en een man-pagina voor dat commando zal openen. Hier is bijvoorbeeld man rm.

11-afbeelding-man-commando

Typ om een ​​trefwoord in een man-pagina te zoeken /[keyword] en druk op enter.

Om bijvoorbeeld een trefwoord te zoeken het dossier, typ /file

11-1beeld-man-zoeken

en druk op Enter

11-2-beeld-man-zoekresultaten

Gebruik n vooruit zoeken, Shift + n achteruit zoeken en q stoppen.

Gevolgtrekking

De opdrachten die in dit artikel worden besproken, kunnen veel meer doen. Oefen deze voorbeelden en doorloop de man-pagina van elk commando om er meer over te weten. Als u klaar bent met voldoende oefenen met deze opdrachten, probeer dan de volgende twee vragen in opmerkingen te beantwoorden.

Q1. De mkdir opdracht slaagt er niet in de directorystructuur te creëren /home/himanshu/makeuseof/article1. Waarom?

14-2-image-mkdir-commando

Hier is de inhoud van /home/himanshu directory voor uw referentie:

14-1-image-ls-commando

Q2. Een bestand met de naam nieuw bestandis aanwezig in de huidige werkdirectory, maar waarom kan de rm niet verwijderen?

15-1-image-ls-commando
15-2-image-rm-opdracht

Afbeeldingscredits: rsync + bash Via Flickr

Himanshu Arora is een softwareprogrammeur, open source-liefhebber en Linux-onderzoeker. Hij schrijft technische artikelen voor verschillende websites en blogs. Sommige van zijn artikelen zijn te zien geweest in IBM developerworks, ComputerWorld en in Linux Journal.