Knäcka Skalet

Om du har börjat
mixtra med din desktop Linux terminal, kan du vara redo för att ta en djupare dyk.

Du är inte längre lägga av med hänvisningar till “terminal”, “command line” eller “skal”, och du har ett grepp om hur filerna är organiserade. Du kan skilja mellan ett kommando, ett alternativ och argument. Du har börjat navigera ditt system.

Vad händer nu?

Gör Det Så

Fil manipulation — det är, som möjliggör för användare att bläddra i katalogstrukturen och interagera med innehåll — ligger i hjärtat av Linux. Det finns en stor arsenal av verktyg till ditt förfogande. Med “mkdir” kommando, kan du göra nya kataloger. Programmet tar ett argument, som är en väg som slutar med namnet på den katalog som skapas.

$ mkdir new_directory

En trevlig sak om “mkdir” är att ska du ange en katalog som redan finns, kommer det inte att skriva över den ursprungliga.

På samma sätt, “touch” – kommandot, med en sökväg till en fil som argument, kan göra en ny (tom) filer.

$ touch-fil

Som med “mkdir”, “touch” inte skadar befintliga filer — det bara uppdateringar tidsstämpeln för senaste åtkomst. Denna funktion är mycket användbar när du gör inkrementella säkerhetskopieringar, som bara spara filer efter en viss datum, men “touch” är också bra för att göra disponibla filer att öva på.

Ta bort filer, med hjälp av “rm”, är en enkel uppgift, men du bör behandlas med försiktighet. Leverans av en väg som ett argument för att “rm” kommer att ta bort filen — men när du trycker på Enter, det är borta för alltid. Du kommer inte hitta det i Papperskorgen.

$ rm-fil

Å ena sidan, “rm” kan inte ta bort kataloger, så en slip av tangentbordet kommer inte att kosta dig massor av filer. För det andra, om du vill ta bort en katalog, och ge “-r” alternativ, det finns inget skyddsnät, och programmet kommer att ta bort alla kataloger som den innehåller.

$ rm -r target_directory

Om du vill ge dig själv samma andas rum med kataloger som “rm”, ger vanliga filer, kan du använda “rmdir”, som returnerar ett fel och utför ingen åtgärd när vägen leder till icke-kataloger.

$ rmdir target_directory

För att se innehållet i filen direkt i terminal utdata, du kan köra “katt” med den fil som anges som ett argument.

$ cat /fil

Vad är fördelen med att använda en “katt”, snarare än en personsökning viewer som “mindre”? Det fungerar snabbare än “mindre”, och att du enkelt kan returnera innehållet i flera filer på en gång helt enkelt genom att lägga till fler argument.

$ cat fil1 fil2

Slutligen, du kan redigera alla filer med en terminal text editor som “nano” eller “vim”. Som med alla andra kommandot skriver du in namnet på ditt valda redaktör med en sökväg till filen och terminalen kommer att ta upp innehållet i editorn gränssnitt. “Nano” editor är bra att börja med om du är angelägen om att börja ändra filer, som det har användning instruktioner som anges längst ned.

Grundläggande Om Shell

För att göra det mesta av dessa nya kommandon i din discovery-processen, det hjälper till att förstå hur skalet passar in i bilden. Allt körs på datorn måste vara i binärt format, så när du skriver ett kommando, hur gör terminalen vet var de binary är?

Skalet har en miljövariabel, en användar – eller system-wide värde i samband med ett sökord (variabelnamn), som kallas “PATH” och “STIG” som listar alla de kataloger där skalet bör leta efter ett kommando.

Varje kommando, som allt i Linux, har en väg, och om du vill veta vad det är att köra “som” kommando följt av namnet på det kommando som du vill hitta.

$ vilket kommando

Du kommer att få rätt väg till det binära. Nu prova att köra “echo $PATH”, som returnerar värdet av “VÄGEN” variabel.

$ echo $PATH

Oddsen är den katalog som innehåller kommandot som du såg upp med “som” var i det. Detta är anledningen till att du inte har skriv ut den väg som “som” avkastning för varje kommando som du kör.

Det finns fler skal än, dock. För att finjustera sitt beteende och behålla sina användare en organiserad, skal — för Linux, Bash — upprätthåller ett par konfigurationsfiler. Den första är “.bash_profile” eller helt enkelt “.profil”, beroende på din Linux-distribution, och det säger Bash vad man ska göra när en användare loggar in.

I de flesta fall är det helt enkelt börjar din grafiska skrivbordet, men du kan skräddarsy din startprocessen till dina behov genom att lägga till normal terminal-kommandon. Om du bestämmer dig för att leka med detta (eller någon annan) Bash-fil, är det bäst att göra en backup (med “cp”). Den andra filen är “.bashrc”.

Detta är hjärtat och själen i Bash, som det sätter ditt kommando genvägar, känd som “alias” och andra anpassade variabler. Om du vill skapa en genväg för ett längre kommando kan du lägga till en rad i filen som innehåller ordet “alias”, en plats, en genväg, ett likhetstecken, och det kommando som du vill att genvägen ska köras (inom citationstecken).

alias genvägen=”command”

Skalet Bash: s tredje konfigurationsfil “.bash_history”, som innehåller en lista över kommandon som du tidigare har kör, oftast putsade de sista par hundra. Du kommer förmodligen att finna att detta är en värdefull resurs, så få vana vid att ha hört det.

Sist men inte minst är “.bash_logout”, som berättar Bash vad du ska göra när du avslutar din session. För de flesta användare, det är inte mycket att se här — men återigen, beroende på dina behov, kan du få Bash att köra ett vanligt kommando på logga ut.

Viktiga Resurser

Här är några fler tips om jag har whetted aptit.

Manuell sidor ger detaljerade förklaringar av alla kommandon som finns tillgängliga på ditt system. Att lära sig att konsultera en “man” – sidan, som du faktiskt kan köra “man-man” för att få-du gissade rätt-en referens för “man” – kommandot.

$ man man

Om du inte är säker på vilken sida man ska titta på, genom att köra “man” med “K” och ett sökord som argument, du kan söka efter text av alla man-sidor samtidigt.

$ man -K nyckelord

Detta ger dig varje omnämnande av sökordet över all dokumentation på ditt system.

Att leta upp en fil som du vet är någonstans på ditt system, kan du använda “hitta”. Kör “sök” med följande argument: namnet på den katalog du vill söka i (rekursivt), “namn” – alternativet (detta eller ett liknande alternativ är obligatoriskt) och det exakta filnamnet.

$ hitta directory -filnamn namn

Om du är lite otydlig på namnet, men vet vad den börjar eller slutar med, kan du sätta en “*” på baksidan eller framsidan av namn, respektive.

$ hitta directory-namn partial_filename*
$ hitta directory-namn *partial_filename

Med denna bas av kunskap, att du har mer än tillräckligt för att gå en lång väg på egen hand. Om du har varit att hålla på att bege sig djupare in i ditt system, nu är den perfekta tiden att ta språnget.

Om du träffar en vägg, var inte rädd för att titta på Google, efter att en användare forum, eller be mig om det. Om du är orolig att du kommer att bryta något, vara säker på att du antagligen inte, och det finns alltid ett sätt att sätta ihop det igen, även om du gör det.

Jag är entusiastiska över vad du ska vända dig. Grattis jakt!

Jonathan Terrasi har varit en ECT News Network krönikör eftersom 2017. Hans huvudsakliga intressen är dator säkerhet (framför allt med Linux på skrivbordet), kryptering och analys av politik och aktuella frågor. Han är en heltid frilansande författare och musiker. Hans bakgrund innefattar tillhandahållande av tekniska kommentarer och analyser i de artiklar som publiceras av Chicago Kommitté för att Försvara Bill of Rights.


Date:

by