Hier vindt je alle commandos die ooit beschreven zijn in het blad linuxmagazine. Het is bedoeld als cheatsheet voor al die momenten dat je het even niet meer precies weet ,of omdat je de man pages wegens ruimte gebrek maar niet hebt geinstalleerd op bijvoorbeeld een livecd.
cal
$ cal -3m 4 2006
Beeld kalender af met maanden maart april mei te beginnen met een maandag
cd
$ cd -
handig om terug tekeren naar vorige directory waar je in stond
gebruik maken van directory stack
$ cd /usr
$ pushd .
$ cd /etc
$ pushd .
$ cd
Hiermee zet je de directories /usr en /etc achtereenvolgens op de stack
$ dirs
Maakt deze lijst zichtbaar
$ popd
Volgt de weg terug in de directory stack
cdparanoia
$ cdparanoia -B '1-3'
rippen van audio cd
optie -B zorgt voor nummering van bestanden
worden weggeschreven als track01.cdda.wav etcetera
date
$ date +"%x %X"
Datum en tijd weergeven met locale installingen
$ date +"%Y%m%d%k%M%S"
Datum met achtereenvolgens Jaar Maand Dag Uur Minuut Seconde
dd
$ dd conv=lcase if=inputfile of=outputfile (converteerd bestand naar lowercase)
Een aardige variatie om bestanden naar lowercase te converteren.
find
$ find -name mijnbestand
Dit vindt alle bestanden en directories waarin de string mijnbestand in voor komt.Het startpunt van de zoekactie is de huidige directory
$ find / -type f -name passwd
de eerste optie is de locatie van waar gezocht moet worden in dit geval de root directory.De overige twee zijn de zoekvoorwaarden (zogenaamde expressions).
de optie -type geeft aan wat voor type file het moet zijn ,de f staat hier in dit geval voor een gewoon bestand.Andere typen zijn bijvoorbeeld d voor een directory en l voor een symbolische link
als je bovenstaande opdracht als normale gebruiker uitvoert krijg je veel permission denied waarschuwingen.Deze waarschuwingen worden geprint via de stderr output en deze zijn eenvoudig om te leiden.
$ find / -type f -name passwd 2>/dev/null
$ find /home -type f -name .bashrc -exec cat {} \;
de exec optie valt uiteen in drie delen , een het commando de {} om aan te geven dat de gevonden bestandsnaam moet worden meegegeven als argument voor het commando en de \; geeft het einde van het commando of de reeks commandos
host
$ host www.dse.nl
zoeken in het Domain Name System (DNS) naar ip-adres van deze host
omgekeerd van ip-adress naar host kan ook
lame
$ lame -b 192 track01.cdda.wav
levert een mp3 bestand met bitrate 192
$ lame -V 3 track01.cdda.wav
levert een gemiddelde bitrate van ergens tussen de 160 en 224 kbits per seconde
optie -V staat vvor kwaliteits niveau 0 is hoogste 9 laagste ,de waarde 4 is standaardwaarde
locate
$ locate bestand.txt
levert alle padnamen waarin de string bestand.txt voorkomt
jokertekens zijn toegestaan in locate maar leveren enigzins vreemde resultaten op die ik persoonlijk niet geheel begrijp
$ locate /usr/lib/*html
$ locate /usr/lib/*html*
levert verschillende resultaten maar wat is het verschil???
lspci
$ /sbin/lspci -tv
levert een lijst met alle pci bus id en de devices die er op aangesloten zijn.
optie -t staat voor weergave in boomstructuur. optie -v is het standaard verbose level (uitgebreidere output).
mail
$ mail -s "onderwerp van dit bericht" someone@gmail.com < tekstbestand.txt
mail via standaard mail commando
$ uuencode surfing.jpeg surfing.jpeg | mail someone@userwithspecificmailclient.com
met uuencode in samenwerking met mail kun je ook attachments bijvoegen alleen moet de ontvanger zijn mailclient wel
in staat zijn deze te lezen (werkt momenteel bijvoorbeeld niet met gmail.
sharutils bevat het programma uuencode
mount
$ mount -o loop -t iso9660 name_of_iso_image.iso /mountpoint
normaal gesproken gebeurt het mounten van een isobestand als gebruiker root
mutt
$ mutt -s "onderwerp" -a bestand.tar.bz2 someone@gmail.com < /dev/null
email verzenden vanuit een script met attachment /dev/null betekent lege body in emailbericht
nedstat
$ netstat --inet -c -n
optie --inet alleen sockets bekijken betreffende ethernet cq internet
optie -n voorkomt het opzoeken van hostnames
optie -c print de lijst elke seconde opnieuw
oggenc
$ oggenc -o track01.cdda.ogg track01.cdda.wav
optie -o geeft output bestand aan,als je deze leeg laat wordt de standaardnaam gebruikt van het wav bestand.
Het gebruik van wildcards zoals *.wav is ook toegestaan
optie -q staat voor kwaliteit (0 is laagste 10 is hoogste)
ping
$ ping -c 1 www.google.com
verzenden van een pakketje waarna de opdracht stopt
rar
$ rar a -v1024k nieuwarchive.rar files
creeert archieven van elk 1024 kb groot met namen nieuwarchive.part1.rar nieuwarchive.part2.rar etcetera
sort
$ sort -t ' ' -k 5 bestand.txt
sorteren van een bestand met delimiter spatie in het vijfde veld
su
met su wat zoiets betekent als 'substitute user' kun je omschakelen van normale gebruiker naar root.Je kunt dit doen op twee manieren
$ su
Na het ingeven van het wachtwoord wordt de shell environment overgenomen van de shell waarin su is gestart.
Zo zul je zien dat je bijvoorbeeld nog in dezelfde directory staat,ook zul je zien dat de meeste shell environment variabelen hetzelfde zijn.
Deze kun je bekijken met
$ set|more
$ su -
Op deze manier schakel je om van gebruiker waarbij de root shell wordt opgestart als login shell.Zo sta je bijvoorbeeld in de home directory van root en de omgevings variabelen zullen beduidend anders zijn als bij het eerste voorbeeld.
$ su -c 'cat /etc/shadow'
met dit commando tover je het shadow password file op het scherm,iets wat de gewone gebruiker niet kan lezen.Let hierbij op dat als het commando spaties bevat je het tussen quotes zet.
Op bovenstaande manier kun je su in interactieve shell scripts gebruiken.
veel configuratie opties van su worden gecontroleerd door een zogenaamd 'pam' (plugable authentication module) bestand.
een van de dingen die je kunt regelen is welke gebruikers gebruik mogen maken van su.Die gebruikers kun je in een aparte groep stoppen en de groep bekend maken aan het pam bestand.
Dit heeft als grote voordeel dat mocht een bepaalde gebruiker op je systeem onverhoopt op enige manier het root password te pakken krijgen.Hij of zij er toch geen gebruik van kan maken als hij niet in deze speciale groep zit.
Je kunt dit regelen in het bestand /etc/pam.d/su en ziet er als volgt uit.
auth required pam_wheel.so group=adminuser
vanaf nu kunnen alleen gebruikers in de adminuser groep gebruik maken van su
time
$ time locate passwd
na de output van het commando volgen de statistieken van time
real is totale tijd nodig
user is tijd die CPU in user mode nodig had
sys is tijd die CPU in kernel mode nodig had(OS)
unzip
$ unzip -l bestand.zip
optie -l voor weergave van bestanden in de zip-file
$ unzip -d /pad/naar/dir/ bestand.zip
bestand uitpakken in de directory /pad/naar/dir/
zonder de optie -d wordt huidige directory gebruikt
updatedb
$ updatedb
genereert een nieuwe locate database
tr
$ cat dosbestand.txt | tr -d '\r' > unixbestand.txt
tr leest het dosbestand in via de standard-in en schrijft het resultaat weg naar standaard-out
de optie -d zorgt ervoor dat het carriage-return karakter (de '\r') wordt verwijderd (delete).
watch
$ watch -n 1 date +%T
toon een klokje dat elke seconde verspringt
$ watch -n 5 -d df
toon de uitvoer van df elke 5 seconden en laat de verschillen zien
wget
$ wget -k -r -c -np -w 1 http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/
Optie -k voor het genereren van lokaal te browsen paginas
Optie -r zet recursie aan
Optie -c om verder te kunnen gaan waar je was opgehouden
Optie -np om niet buiten de gestelde subdirectory te geraken
Optie -w 1 wacht 1 seconde voor het verder gaan
whereis
$ whereis ls
Dit geeft als output,afhankelijk van jouw systeem
ls : /bin/ls
/usr/share/man/man1/ls.1.gz
Het commando geeft dus zowel de locatie van de binary als van de man page
whois
$ whois -h whois.domain-registry.nl dse.nl
optie -h geeft aan bij welke database op internet je wilt zoeken.
zdump
$ zdump CET Japan
CET is central european time (geeft onze tijd en japanse tijd weer,aantal argumenten is onbeperkt)