RHEL 310810
Processer
Alla har:
stdin: Tar in information
stdout: Ger ut informatio
stderr: felmeddelanden
Information kan ligga inne med mer information än vad stdout hinner ge ut.
Kallas pipeline, den agerar alltså buffert.
Information går bara åt ett håll.
Socket
Processer går åt båda hållen.
Domain sockets två processer på samma maskin
Internet domain socket,
Pipes
{ls -l /var/bin | less} ger stdout till ett format som du kan styra hur den läser det
{ls -lR /proc > utfil} ger stdout till en utfil
{ls -lR /proc 2> utfil} ger stderr till en utfil
{ls -lR [plats] | less 2>utfil} ger stdout till less, ger stderr till utfil
{ls -lR [plats] >utfil1 2> utfil2} ger stdout till utfil1 och stderr till utfil2
{ls -lR [plats] >>utfil] ger informationen till slutet av en fil, tar inte bort det som redan finns i filen.
{less <fil} pipar filen till less
{ls -lR >utfil 2>&1} skickar in både stdout och stderr in till utfil
{ls /bin/ch*} läser alla filer som börjar på ch i /bin
{ls /bin/{ls, cp, mv, ln}} visa det som ligger inom måsvingarna
Sätter man inte {”[det man ska läsa]”] så är det skalet som utför den biten av funktionen, sätter man {”[det man ska läsa]”] är det programmet som hanterar det.
[Zon av komplett förvirring]
Olika argument man ge till globbar (*)
[1.5][a.f]
^ i början av en rad
{aA}
$ i slutet av en rad
\t
\b
\r
\0xNN Hexatal
\n Newline
\NNN Oktala tal 0-7
[/Zon av komplett förvirring]
grep är ett redskap för att söka i filer och i pipes, används för att leta efter textsträngar och som inte innehåller viss textsträngar osv, väldigt flexibelt verktyg för att hitta information.
/dev/null tomhet, datat försvinner.
/dev/zero har ett oändligt antal nollor
Miljövariabler (environment variables)
set | grep sh
shell=/bin/bash
set VARIABEL argument (i vissa shell)
VARIABLE=content_of_variable ( i bash)
bash -l bash med loginskript från användaren
bash bash utan loginskript
sudo bash -l bash som root med loginskript från användaren
sudo bash bash med oot utan loginskript
su logga in som root
su – logga in som root med loginskript från normala användaren
Miljövariabler som är bra för att ställa in och leka med
PATH kataloger som används för att leta efter program
CDPATH sätter en generell katalog som fungerar globalt över hela systemet
PATH=$PATH~/bin (lägger till ~/bin in i pathen)
export PATH
alias dir=ls sätter dir som samma kommando som ls
alias LS=ls -lR
ISUAL
variabel som talar om vad skalet har för inställning för editiering.
ISUAL sätter alltså som vilket programs kommandon man ska styra sitt shell, exempelvis emacs eller vi.
ISUAL=vi sätter vi
EDITOR
Används för att definiera vilken texteditor som är standard
Variabler står i /etc/profile eller /etc/bashrc
kopiera filer från /bin till /tmp
{cp /bin/* /tmp} kopierar allt innehåll från en katalog till en annan
{cp `ls /bin` /tmp} kopierar en lista till dit man vill, fördelen är att man kan då styra vilken information man vill ska hanteras
{cp `cat LISTA` /tmp} kopierar innehållet i LISTA till /tmp
Alternativ till ` är att man använder {$()} istället för {``} eftersom det är lättare.