I denne artikkelen forklarer jeg hvordan du bruker Terminal-kommandoene til å gi informasjon om noen kommandoer og hva de gjør.
Jeg gir eksempler for å illustrere prosessen også.
Kommandolinjeverktøyet er kraftig. Det finnes verktøy som tar en kjedelig jobb i et grafisk brukergrensesnitt (UI) og gjør det til en oppgave som tar noen sekunder. Å fjerne de siste fire linjene i hver rad i en stor fil ville være en langvarig prosess i et brukergrensesnittprogram. Prosessen kan imidlertid automatiseres på kommandolinjen.
De vanligste måtene å åpne et terminalvindu i Ubuntu Linux er:
Det finnes mange kommandoer som er knyttet til terminalskallet i Ubuntu Linux. Artikkelen nedenfor viser de mest brukte, under gruppene de påvirker.
Det er tre hovedkommandoer som vi bruker for å gi all informasjonen som kreves for å bruke de forskjellige terminalkommandoene.
man-kommandoen viser håndboken for enhver kommando som brukes i terminalen.
De fleste skallkommandoer godtar forskjellige alternativer. Hvis du vil ha litt informasjon om en kommando og en liste over tilgjengelige alternativer, kan du bruke man
- Forkortelse for manuell kommando. Gi navnet på kommandoen du vil finne mer om som argument. Det er hvilken kommando man
kommandoen fungerer videre.
Eksempel: Hvis du skriver inn kommandoen man who
, vises følgende utdata.
WHO(1) User Commands WHO(1)
NAME
who - show who is logged on
SYNOPSIS
who [OPTION}... [ FILE | ARG1 ARG2 ]
DESCRIPTION
-a, --all
same as -b -d --login -p -r -t -T -u
-b, --boot
time of last system boot
-d, --dead
print dead processes
-H, --heading
print line of column headings
-i, --idle
add idle time as HOURS:MINUTES, . or old (deprecated, use -u)
-l, --login
print system login processes
--lookup
attempt to canonicalize hostnames via DNS
-m, only hostname and user associated with stdin
Manual page who(1) line 1
Mange av håndbøkene dekker flere skjermbilder. Bruk markøren eller ARROW
eller Page Up- og Page Down-tastene for å navigere gjennom teksten. Mellomromstasten viser neste tekstlinje. Hvis du trykker på q-tasten, avslutter du håndboken og går tilbake til skallet.
Vi kan se på man-siden at vi kan bruke -a
Alternativ for å vise mer informasjon om de aktive brukerøktene.
user@3[user]$ who -a
|
|
|
|
Nov 14 13:47 |
|
10 |
id=si |
term=0 |
exit=0 |
|
|
|
system boot |
Nov 14 13:47 |
|
|
|
|
|
|
|
|
run-level 5 |
Nov 14 13:47 |
|
|
Last=S |
|
|
|
|
|
|
Nov 14 13:47 |
|
835 |
id=15 |
term=0 |
exit=0 |
LOGIN |
|
|
tty1 |
Nov 14 13:47 |
|
958 |
id=1 |
|
|
root |
|
- |
tty2 |
Nov 14 19:15 |
00:19 |
959 |
|
|
|
user |
|
- |
tty3 |
Nov 14 19:28 |
00:06 |
960 |
|
|
|
LOGIN |
|
|
tty4 |
Nov 14 13:47 |
|
961 |
id=4 |
|
|
LOGIN |
|
|
tty5 |
Nov 14 13:47 |
|
962 |
id=5 |
|
|
LOGIN |
|
|
tty6 |
Nov 14 13:47 |
|
963 |
id=6 |
|
|
user |
|
? |
:0 |
Nov 14 13:47 |
? |
965 |
|
|
|
|
|
|
pts/3 |
Nov 14 16:29 |
|
1746 |
id=/3 |
term=0 |
exit=0 |
user@3[user]$
Det leser også hjelpefiler for programmer, den man
Kommandoen kan også gi informasjon om skall, funksjoner og biblioteker.
Hvis du ikke er sikker på hvordan du bruker en bestemt kommando, kjører du kommandoen med -h
eller –help
Brytere. Du ser bruksinformasjon og en liste over alternativer som du kan bruke med kommandoen.
Eksempel: Hvis du vil vite hvordan du bruker wget
kommando, skriv inn wget –help
eller wget -h
.
User@Ubuntu@#$ wget --help
GNU Wget 1.12, a non-interactive network retriever.
Usage: wget [OPTION]... [URL]...
Mandatory arguments to long options are mandatory for short options t
oo.
Startup:
-V, --version display the version of Wget and exit.
-h, --help print this help.
-b, --background go to background after startup.
-e, --execute=COMMAND execute a '.wgetrc' -style command.
Logging and input file:
Dette skriver ofte mye informasjon til terminalen. Den kan være tung å bla gjennom. For å lese utdataene lettere, kan du pipe
Det gjennom mindre kommando. Som lar deg bla gjennom den med markøren eller piltastene på tastaturet.
Eksempel: wget -help | less
GNU Wget 1.12, a non-interactive network retriever.
Usage: wget [OPTION]... [URL]...
Mandatory arguments to long options are mandatory for short options t
oo.
Startup:
-V, --version display the version of Wget and exit.
-h, --help print this help.
-b, --background go to background after startup.
-e, --execute=COMMAND execute a '.wgetrc' -style command.
Logging and input file:
-o, --output-file=FILE log messages to FILE.
:
Trykk på q for å lukke less-verktøyet når du er ferdig.
For å finne et bestemt alternativ, kan du pipe
Utgangen gjennom grep
kommando. (Eksempel: Bruk følgende kommando til å søke etter alternativer som inneholder ordet proxy.
)
wget -help | grep proxy
User@ubuntu:~$ wget --help | grep proxy
--no-proxy explicitly turn off proxy.
--proxy-user=USER set USER as proxy username.
--proxy-password=PASS set PASS as proxy password.
User@Ubuntu:~$
Noen kommandoer er også dokumentert inne i info
system. Informasjonen her utfyller hva man
kommandoen vises.
Eksempel: Skriv inn kommandoen info ls,
Følgende utdata vises.
[support@support]$" info ls
Du kan nå se en håndbok med viktig informasjon om ls
kommando.
File: coreutils.info, Node: ls invocation, Next: dir invocation, Up: Directory listing
'ls': List directory contents
=============================
The 'ls' program lists information about files (of any type,
including directories). Options and file arguments can be intermixed
arbitrarily, as usual.
For non-option command-line arguments that are directories, by
default 'ls' lists the contents of directories, not recursively, and
omitting files with name beginning with '.'. For other non-option
arguments, be default 'ls' lists just the file name. If no non-option
argument is specified, 'ls' operates on the current directory, acting
as if it had been invoked with a single argument of '.'.
By default, the output is sorted alphabetically, according to the
locale settings in effect. (1) If standard output is a terminal, the
output is in columns (sorted vertically) and control characters are
output as question marks; otherwise, the output is listed one per line
and control characters are output as-is.
--zz-Info: (coreutils.info.gz)ls invocation, 48 lines --Top------------------
Welcome to info version 4.3 Type C-h for help, m for menu item.
Du kan bla nedover siden ved å trykke mellomromstasteneller ved å bruke markøren/ARROW
Nøkler.
help
, trykk Hquit
, trykk Q
Du kan gjøre nesten hva som helst i en terminal, som du også vil gjøre fra et brukergrensesnitt.
Som sagt tidligere ble mange kommandoer designet først for å fungere i terminalen, og deretter ble et brukergrensesnitt satt på toppen. Dette er grunnen til at mange GUI-er virker upraktiske – i starten ble de lagt til i etterkant, siden de fleste versjoner av Linux-servere ikke bryr seg med dem.
Terminalen åpnes fra menyen i hjemmemappen din som standard. Kjent som ~
Du finner din nåværende katalog ved hjelp av .
operatør. De fleste kommandoer skiller mellom store og små bokstaver når de brukes i gjeldende mappevalg, ved bruk av kommandoer, plasseringer og filer. /home
er ikke det samme som /HOME
eller /Home
.
Bruk TAB-tasten til å fullføre filnavn hvis du har en lang drivertittel. driver-128947232jaseu.sh
Skriv for eksempel inn dri
og det går inn i resten. Forutsatt at du ikke har to navn som begynner med dri
Og hvis du gjør det, legg til et annet tegn for å gjøre det driv
og prøv igjen. Forsikre deg om at bilen stemmer helt overens med det du vil se.
Nesten alle kommandoer kan leses om i sin helhet ved hjelp av man
side eller ved å skrive -h
eller --help
etter å ha skrevet den første kommandoen. Denne syntaksen er enten man command_name
, command_name -h
eller command_name --help
.
Hvis du vil ha mer informasjon, kan du bruke info. En kommando kan søkes etter ved hjelp av info command_name
. For de fleste av disse kommandoene som er en del av coreutils-pakken, Du kan finne info
i tillegg til å bruke info coreutils command_name
påkallelse der kommandoen søkte etter erstatninger command_name
.
Nesten alle kommandoer kan vise nøyaktig hva som skjer, trinn for trinn. Dette er vanligvis -v
eller --verbose
.
Du kan få mer informasjon ved å angi flere kommandoflagg for en kommando samtidig. Se ls -al
eksempel nedenfor.
Kommandonavn er ikke alltid åpenbare - på grunn av plassbegrensninger i gamle dager av UNIX at de ble forkortet og disse konvensjonene fast.
cd
– Tar deg tilbake til home (hjem), i liket med cd ~
cd..
– Tar deg én katalog tilbake. Fra og med /home/user/Desktop
, cd..
setter deg inn i /home/user
. Dette kan utvides til cd ../../
som flytter deg tilbake to kataloger til /home
.
cd foldername/
– Tar deg videre til den angitte mappen i gjeldende mappe.
/
, er det en viktig utelatelse. Hvis jeg er i /home/user
og jeg ønsker å komme til Desktop
. Jeg må skrive cd Desktop/
uten /
før Desktop
. Skrive /
før det plasserer oss i roten av filsystemet som ikke ville fungere.
cd /some/other/path
– Tar deg til den angitte mappebanen. Hvis du fikk banen riktig. Ikke glem at du kan bruke TAB
Tast for autofullføring.
ls
– Oppgir alle filene i gjeldende mappe.
ls -l
– Gir en lengre liste som inkluderer eiere, tillatelser, størrelse og dato for endring.
ls -a
– Viser de skjulte filene og mappene i tillegg til den vanlige listen.
ls -al
– Kombinerer to alternativer for å vise både skjulte filer og mapper i det lange formatet.
ls -h
- Viser filstørrelser i lesbart format KB, MB, GB,
filstørrelser i stedet for byte. Det brukes oftest med -l
flagg.
Du kan se filer i kataloger du ikke engang er i. Hvis jeg er i /home/user/Desktop
og jeg vil vise en fil i /home/user
, kan jeg gjøre ls ../
som viser filene en katalog tilbake.
cp file /path/to/folder
– Kopierer den angitte filen til en angitt bane.
cp -r folder /path/to/folder
– Kopierer innholdet i mappen til en annen mappe gjentatte ganger.
cp *.extension /path/to/folder
– Kopierer filene som samsvarer med den angitte utvidelsen, til en ny mappe. For å kopiere alle .doc filer, blir det cp *.doc /path/to/folder
og mappen må eksistere.
cp name* /path/to/folder
- Kopierer alle filene som begynner med name
til den gitte mappen. Hvis du vil kopiere alle filer som begynner med: example
, blir det cp example* /path/to/folder
og mappen må allerede eksistere.
Syntaksen til mv
ligner på eksemplet ovenfor med cp
unntatt for eksempel # 2. mv
tar ikke -r
flagg siden flytting av en mappe også flytter innholdet. Syntaksen er ikke nøyaktig i alle tilfeller, men fungerer med eksemplene ovenfor. Se håndboksidene for mer informasjon.
Fjerne filer ved hjelp av rm
er permanent. Den bruker ikke papirkurven. Bruk dette med forsiktighet og sørg for at du sletter nøyaktig det du ønsker, før du trykker på Enter
-tasten Hvis du overkompliserer slettekommandoene dine, ender det aldri bra.
rm file
- Fjern den spesifikke filen fra datamaskinen.
rm -r folder
- Fjern den bestemte mappen fra datamaskinen.
rm -rf folder
- Fjerner den bestemte mappen kraftig fra datamaskinen. Denne kommandoen kan ødelegge konfigurasjonen din hvis den brukes på feil måte.
Du kan redigere filer ved hjelp av nano
i en terminal for å gjøre raske og grove filer helt opp til fulle konfigurasjoner. Det kan være nyttig, men det håndterer vanlige tekstfiler og programmeringsfiler, slik at ting som Microsoft Word-dokumenter ikke åpnes ordentlig.
Hvis roten eier en fil, kan ikke en vanlig bruker redigere den. nano
Må innledes med sudo
; for å lagre endringer. Den åpnes ellers i skrivebeskyttet modus.
nano newfile.whatever
av det angitte navnet og åpner det for redigering.
nano existing_file
– åpner den eksisterende filen for redigering.
Fra innsiden av nano
Lagre filen ved å trykke på CTRL+O
tastene sammen og enten endre navnet eller trykk på Enter
nøkkel for å beholde samme navn. Dette lagrer filen.
Avslutt nano
Ved hjelp av CTRL+X
nøkler sammen. Hvis du har ulagrede endringer, spør den om du vil lagre dem.
mkdir folder_name
– Oppretter mappen med det angitte navnet
mkdir -p /path/to/folder/name
– Oppretter hver mappe etter behov. Slik oppretter du en mappe /home/user/1stfolder/2ndfolder
, og bare /home/user
finnes, ved hjelp av mkdir -p
gjør begge kataloger 1stfolder,
og 2ndfolder
.
ps aux
- Viser alle prosessene i detalj som kjører på datamaskinen. Dette inkluderer brukeren, prosess-ID PID,
og navnet på prosessen. Du kan bruke denne til å vise prosesslisten og, om nødvendig, avslutte unødvendige eller stansede prosesser.
kill PID
– PID er et nummer som refererer til den avvikende prosessen. Du bør få PID fra en kommando som ps aux
. Hvis en prosess nekter å dø, kan du også spesifisere kill -9 PID
som skal avslutte prosessen på noen måte.
killall program
- Killall
Dreper by name
Alle forekomster av listed program
. Hvis det for eksempel er 3 Firefox-nettleserøkter åpne, killall Firefox
gjør akkurat det, drep alle Firefox-økter. kill
ville ta den spesifiserte PID av den fornærmende Firefox-prosessen som du vil drepe og drepe den eneste.
xkill
er et brukergrensesnitt måte å klikke og drepe Windows på. Skrive inn xkill
skal få opp en hodeskalle-og-crossbones ikon og neste vindu klikket er drept.
Pipes
vises som en straight bar,
ellers kjent som |
-tasten
Denne tasten brukes sjelden i Windows, men er ofte plassert på tasten for omvendt skråstrek.
Disse brukes til å koble kommandoer sammen. Pipes
tar utdataene fra én kommando og ruter dem, slik at de brukes som inndata for en annen kommando når de er koblet sammen.
Se ressurser på Internett hvis du vil ha mer informasjon om pipes
og deres bruk som det er volumer som er skrevet på dem.
>
er vant til å overwrite
De eksisterende filene innholdet ved å erstatte dem med utdataene fra den nye kommandoen.
>>
er vant til å append
informasjon til de eksisterende filene. Dette er nyttig for logging.
Example:
ps aux > processes.log
sender utdataene fra ps aux
til filen processes.log
for å vise kommandoutdataene i et tekstredigeringsprogram og overskriver gjeldende innhold i filen.
tee
brukes sammen med en |
for å ta kommandoutgangen og sende den et annet sted. Dette er nyttig hvis det oppstår feil som du overser. Dermed blir alt på skjermen også samlet i en fil.
Eksempel: dmesg
| tee boot.txt
ville kjøre kommandoen dmesg
som viser den første oppstartsinformasjonen. Informasjonen i |
sender utdataene fra dmesg
til tee
, som deretter gjør jobben sin ved å sende den til terminalen og loggfilen boot.txt
.
Vil du kjøre en fil i gjeldende katalog etter at den er merket som kjørbar? Informasjonen i ./
Operatøren kan kjøre filen som en vanlig bruker, forutsatt at du ikke trenger rotrettigheter. ./
betyr bokstavelig talt in the current directory
Så det fungerer ikke på filer utenfor den nåværende katalogen.
Hvis du vil kjøre en fil som ikke er i gjeldende katalog, må du sende banen til riktig kjørende program. Hvis det er et pythonprogram, er det python /path/to/file
Og hvis det er en skallfil, er det sh /path/to/file
som et eksempel. Det finnes andre programmer, men disse er de vanligste.
Hvis du vil kjøre en fil med rotrettigheter fordi du mottok operation not permitted?
. Du må prefiks kommandoen med sudo
. Som i eksemplet ovenfor, sudo python /path/to/file
Kjører skriptet med rotrettigheter.
Hvis du vil kjøre et brukergrensesnittprogram fra terminalen, skriver du inn programnavnet - case sensitive!
Og den lanseres. Dette gjør den nåværende terminalen ubrukelig. Å lukke terminalen mens programmet er åpent, dreper også programmet. En bedre måte er å bakgrunnen programmet, ved hjelp av program_name
og deretter skrive ordet exit
på terminalen for å lukke den og holde prosessen i gang.
Hvis du vil kjøre et brukergrensesnittprogram med rotrettigheter fra terminalen, prefikser du det med gksudo
eller gksu
og ikke sudo
. Bruke sudo
Å starte brukergrensesnittapplikasjoner er en dårlig vane og bør unngås.
Gjøre not
bruk sudo
bare fordi noe bringer opp Operation not permitted.
Husk at du kan destroy
datamaskiner ved å kjøre kommandoer på feil sted med rotrettigheter. Forsikre deg om at filene dine kommer fra anerkjente kilder.
Har du gått deg vill i en mappe? Skriv inn pwd
for å skrive ut arbeidskatalog.
Vil du beregne diskplassen din? df -h
kan gi deg en rask beregning.
Vil du beregne størrelsen på en mappe eller fil? du -cksh target_name
gjør akkurat det. Vil du beregne størrelsen på gjeldende mappe? du -cksh
.
Vil du merke en fil som kjørbar? chmod +x filename
gjør det.
Du må montere en iso? Linux har denne funksjonaliteten innebygd. Opprett en katalog et sted, si /home/user/isomount
og utstede kommandoen mount -o loop /path/to/myisofile.iso /home/user/isomount
Og innholdet er montert i den mappen.
Etter å ha kjørt en kommando, må du kjøre den på nytt, men du kan ikke huske nøyaktig hvordan det gikk? Skriv inn history
inn i terminalen, og den skriver ut kommandohistorikken din. Vil du slette historikken din? history -c
sletter informasjonen.