10 nyttige Linux kommandolinjetriks for nybegynnere - del 2


Jeg husker da jeg først begynte å bruke Linux og jeg var vant til det grafiske grensesnittet til Windows, hatet jeg virkelig Linux-terminalen. Den gang syntes jeg kommandoene var vanskelige å huske og riktig bruk av hver av dem. Med tiden innså jeg skjønnheten, fleksibiliteten og brukervennligheten til Linux-terminalen, og for å være ærlig går det ikke en dag uten bruk. I dag vil jeg dele noen nyttige triks og tips for Linux-nykommere for å lette overgangen til Linux eller bare hjelpe dem med å lære noe nytt (forhåpentligvis).

  1. 5 interessante kommandolinjetips og triks i Linux – del 1
  2. 5 nyttige kommandoer for å administrere Linux-filtyper – del 3

Denne artikkelen har til hensikt å vise deg noen nyttige triks hvordan du bruker Linux-terminalen som en proff med minimale ferdigheter. Alt du trenger er en Linux-terminal og litt ledig tid til å teste disse kommandoene.

1. Finn riktig kommando

Å utføre riktig kommando kan være avgjørende for systemet ditt. Men i Linux er det så mange forskjellige kommandolinjer at de ofte er vanskelige å huske. Så hvordan søker du etter den rette kommandoen du trenger? Svaret er apropos. Alt du trenger for å løpe er:


# apropos <description>

Hvor du bør endre «beskrivelsen» med den faktiske beskrivelsen av kommandoen du leter etter. Her er et godt eksempel:


# apropos "list directory"

dir (1) - list directory contents
ls (1) - list directory contents
ntfsls (8) - list directory contents on an NTFS filesystem
vdir (1) - list directory contents

Til venstre kan du se kommandoene og til høyre beskrivelsen av dem.

2. Utfør forrige kommando

Mange ganger må du utføre den samme kommandoen om og om igjen. Mens du gjentatte ganger kan trykke Opp-tasten på tastaturet, kan du bruke historiekommandoen i stedet. Denne kommandoen viser alle kommandoer du skrev inn siden du startet terminalen:


# history

    1  fdisk -l
    2  apt-get install gnome-paint
    3  hostname linux-console.net
    4  hostnamectl linux-console.net
    5  man hostnamectl 
    6  hostnamectl --set-hostname linux-console.net
    7  hostnamectl -set-hostname linux-console.net
    8  hostnamectl set-hostname linux-console.net
    9  mount -t "ntfs" -o
   10  fdisk -l
   11  mount -t ntfs-3g /dev/sda5 /mnt
   12  mount -t rw ntfs-3g /dev/sda5 /mnt
   13  mount -t -rw ntfs-3g /dev/sda5 /mnt
   14  mount -t ntfs-3g /dev/sda5 /mnt
   15  mount man
   16  man mount
   17  mount -t -o ntfs-3g /dev/sda5 /mnt
   18  mount -o ntfs-3g /dev/sda5 /mnt
   19  mount -ro ntfs-3g /dev/sda5 /mnt
   20  cd /mnt
   ...

Som du vil se fra utdataene ovenfor, vil du motta en liste over alle kommandoer du har kjørt. På hver linje har du nummer som indikerer raden du har skrevet inn kommandoen i. Du kan hente frem kommandoen ved å bruke:


!#

Hvor # skal endres med det faktiske nummeret på kommandoen. For bedre forståelse, se eksemplet nedenfor:


!501

Tilsvarer:

# history

3. Bruk midnight Commander

Hvis du ikke er vant til å bruke kommandoer som cd, cp, mv, rm, kan du bruke midnattskommando. Det er et brukervennlig visuelt skall der du også kan bruke mus:

Takket være F1 – F12-tastene kan du enkelt utføre forskjellige oppgaver. Bare sjekk forklaringen nederst. Klikk på «Sett inn»-knappen for å velge en fil eller mappe.

Kort fortalt kalles midnattskommandoen "mc". For å installere mc på systemet ditt, kjør ganske enkelt:


$ sudo apt-get install mc        [On Debian based systems]

# yum install mc                 [On Fedora based systems]

Her er et enkelt eksempel på bruk av midnight commander. Åpne mc ved å skrive:


# mc

Bruk nå TAB-knappen for å bytte mellom vinduer – venstre og høyre. Jeg har en LibreOffice-fil som jeg vil flytte til «Programvare»-mappen:

For å flytte filen til den nye katalogen, trykk på F6-knappen på tastaturet. MC vil nå be deg om bekreftelse:

Når den er bekreftet, vil filen bli flyttet til den nye destinasjonskatalogen.

Les mer: Slik bruker du Midnight Commander File Manager i Linux

4. Slå av datamaskinen på et bestemt tidspunkt

Noen ganger må du slå av datamaskinen noen timer etter at arbeidstiden er over. Du kan konfigurere datamaskinen til å slå seg av på et bestemt tidspunkt ved å bruke:


$ sudo shutdown 21:00

Dette vil fortelle datamaskinen din om å slå seg av på det spesifikke tidspunktet du har oppgitt. Du kan også fortelle systemet om å slå seg av etter et bestemt antall minutter:


$ sudo shutdown +15

På den måten vil systemet slå seg av om 15 minutter.

5. Vis informasjon om kjente brukere

Du kan bruke en enkel kommando for å liste Linux-systembrukerne og litt grunnleggende informasjon om dem. Bare bruk:


# lslogins

Dette bør gi deg følgende utgang:


UID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS
0 root 0 0 Apr29/11:35 root
1 bin 0 1 bin
2 daemon 0 1 daemon
3 adm 0 1 adm
4 lp 0 1 lp
5 sync 0 1 sync
6 shutdown 0 1 Jul19/10:04 shutdown
7 halt 0 1 halt
8 mail 0 1 mail
10 uucp 0 1 uucp
11 operator 0 1 operator
12 games 0 1 games
13 gopher 0 1 gopher
14 ftp 0 1 FTP User
23 squid 0 1
25 named 0 1 Named
27 mysql 0 1 MySQL Server
47 mailnull 0 1
48 apache 0 1 Apache
...

6. Søk etter filer

Å søke etter filer kan noen ganger ikke være så lett som du tror. Et godt eksempel for å søke etter filer er:


# find /home/user -type f

Denne kommandoen vil søke etter alle filer i /home/user. Kommandoen finn er ekstremt kraftig, og du kan sende flere alternativer til den for å gjøre søket ditt enda mer detaljert. Hvis du vil søke etter filer som er større enn gitt størrelse, kan du bruke:


# find . -type f -size 10M

Kommandoen ovenfor vil søke fra gjeldende katalog etter alle filer som er større enn 10 MB. Pass på at du ikke kjører kommandoen fra rotkatalogen til Linux-systemet ditt, da dette kan forårsake høy I/O på maskinen din.

En av de mest brukte kombinasjonene som jeg bruker finn med er "exec"-alternativet, som i utgangspunktet lar deg kjøre noen handlinger på resultatene av finn-kommandoen.

La oss for eksempel si at vi ønsker å finne alle filene i en katalog og endre tillatelsene deres. Dette kan enkelt gjøres med:


# find /home/user/files/ -type f -exec chmod 644 {} \;

Kommandoen ovenfor vil søke etter alle filene i den angitte katalogen rekursivt og vil utføre chmod-kommandoen på filene som ble funnet. Jeg er sikker på at du vil finne mange flere bruksområder for denne kommandoen i fremtiden, for nå les 35 eksempler på Linux 'finn' kommando og bruk.

7. Bygg katalogtrær med én kommando

Du vet sikkert at du kan opprette nye kataloger ved å bruke mkdir-kommandoen. Så hvis du vil opprette en ny mappe, vil du kjøre noe slikt:


# mkdir new_folder

Men hva hvis du vil opprette 5 undermapper i den mappen? Å kjøre mkdir 5 ganger på rad er ikke en god løsning. I stedet kan du bruke -p-alternativet slik:


# mkdir -p new_folder/{folder_1,folder_2,folder_3,folder_4,folder_5}

Til slutt bør du ha 5 mapper plassert i new_folder:


# ls new_folder/

folder_1 folder_2 folder_3 folder_4 folder_5

8. Kopier fil til flere kataloger

Filkopiering utføres vanligvis med kommandoen cp. Å kopiere en fil ser vanligvis slik ut:


# cp /path-to-file/my_file.txt /path-to-new-directory/

Tenk deg nå at du må kopiere den filen i flere kataloger:


# cp /home/user/my_file.txt /home/user/1
# cp /home/user/my_file.txt /home/user/2
# cp /home/user/my_file.txt /home/user/3

Dette er litt absurd. I stedet kan du løse problemet med en enkel kommando på én linje:


# echo /home/user/1/ /home/user/2/ /home/user/3/ | xargs -n 1  cp /home/user/my_file.txt

9. Slette større filer

Noen ganger kan filer bli ekstremt store. Jeg har sett tilfeller der en enkelt loggfil ble over 250 GB stor på grunn av dårlige administrasjonsferdigheter. Å fjerne filen med rm-verktøyet er kanskje ikke tilstrekkelig i slike tilfeller på grunn av det faktum at det er ekstremt store datamengder som må fjernes. Operasjonen vil være «tung» og bør unngås. I stedet kan du gå med en veldig enkel løsning:


# > /path-to-file/huge_file.log

Der du selvfølgelig må endre banen og filnavnene med de nøyaktige for å matche saken din. Kommandoen ovenfor vil ganske enkelt skrive en tom utdata til filen. Med enklere ord vil det tømme filen uten å forårsake høy I/O på systemet ditt.

10. Kjør samme kommando på flere Linux-servere

Nylig spurte en av våre lesere i LinuxSay-forumet vårt hvordan du utfører en enkelt kommando til flere Linux-bokser samtidig ved å bruke SSH. Han hadde maskinens IP-adresser som så slik ut:


10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
10.0.0.5

Så her er en enkel løsning på dette problemet. Samle IP-adressene til serverne i én fil kalt list.txt én under en annen, akkurat som vist ovenfor. Deretter kan du kjøre:


# for in $i(cat list.txt); do ssh user@$i 'bash command'; done

I eksemplet ovenfor må du endre «bruker» med den faktiske brukeren du skal logge med og «bash-kommando» med den faktiske bash-kommandoen du ønsker å utføre . Metoden fungerer bedre når du bruker passordløs autentisering med SSH-nøkkel til maskinene dine, da du på den måten ikke trenger å skrive inn passordet for brukeren om og om igjen.

Merk at du kanskje må sende noen ekstra parametere til SSH-kommandoen avhengig av Linux-boksoppsettet ditt.

Konklusjon

Eksemplene ovenfor er veldig enkle, og jeg håper de har hjulpet deg med å finne noe av det fine med Linux og hvordan du enkelt kan utføre forskjellige operasjoner som kan ta mye mer tid på andre operativsystemer.