Veel sed käsu näidiseid
This commit is contained in:
parent
4e4cd76afb
commit
8921415eae
73
nipid.md
73
nipid.md
@ -10,6 +10,7 @@ Kiirklahvid:
|
||||
* Ctrl-Vasak, Ctrl-Parem - Sõna kaupa navigeerimine käsus
|
||||
* Home, End - Käsu algusess või lõppu navigeerimine
|
||||
|
||||
|
||||
# Käskude taustal käitamine
|
||||
|
||||
Käsu taustale panemiseks saab vajutada Ctrl-Z ning seejärel anda käsk
|
||||
@ -19,10 +20,13 @@ bg
|
||||
```
|
||||
|
||||
Käsu taustal käima panemiseks võib käsu lõppu panna & sümboli,
|
||||
tulemuste ja veateadete salvestamiseks tuleks stdout ja stderr ümber suunata:
|
||||
tulemuste ja veateadete salvestamiseks tuleks stdout ja stderr ümber suunata.
|
||||
Lisaks terminali kinni pannes saadetakse kõigile protsessidele SIGHUP signaal
|
||||
mis ütleb et programmid peaks end sulgema, selleks et seda ei juhtuks peaks
|
||||
käsu algusesse lisama ka ```nohup```. Kõige komplektsem näide käsu taustal käima panemiseks oleks siis järgnev:
|
||||
|
||||
```bash
|
||||
käsk > /tmp/tulemused 2>/tmp/veateated &
|
||||
nohup käsk > /tmp/tulemused 2>/tmp/veateated &
|
||||
```
|
||||
|
||||
See väljastab käivitatud protsessi identifikaatori (PID),
|
||||
@ -60,6 +64,31 @@ Käsk jääb ootama sisendit standardsisendist, st klaviatuur antud juhul.
|
||||
Kopeeri lõik soovitud failist ning aseta PuTTY puhul parema hiireklõpsuga.
|
||||
Vajuta Ctrl-D et lõpetada asetamine. Ctrl-D tähendab käsureal EOF-i (end of file).
|
||||
|
||||
|
||||
# Screen ja analoogid
|
||||
|
||||
Teine variant käske taustal käitada on teha seda terminali multiplekseri abil
|
||||
nagu nt screen:
|
||||
|
||||
```
|
||||
screen # Avab uue käsurea sessiooni mis jääb taustale käima ka siis
|
||||
# kui terminal suletakse või SSH ühendus serverisse katkeb
|
||||
```
|
||||
|
||||
Screenist lahti haakimiseks tuleb vajutada esmalt Ctrl-A ning seejärel D.
|
||||
Screeni klahvikombinatsioonid on dokumenteeritud [siin](http://www.pixelbeat.org/lkdb/screen.html)
|
||||
|
||||
Screeni sees käiva käsu külge haakimiseks:
|
||||
|
||||
```bash
|
||||
screen -r # haagi külge kui ükski muu terminal pole külge haakinud
|
||||
screen -r -d # haagi lahti teised terminalid
|
||||
screen -r -x # jäta teised terminalid külge haagituna
|
||||
```
|
||||
|
||||
Kui taustal käib mitu screeni sessiooni siis ```-r``` tahab lisaks saada vastava sessiooni protsessi identifikaatorit.
|
||||
|
||||
|
||||
# Copy-paste EOF markeriga
|
||||
|
||||
Käivita käsk:
|
||||
@ -80,6 +109,7 @@ cat << \EOF > failinimi
|
||||
|
||||
Aseta sisu, kirjuta EOF ning vajuta Enter
|
||||
|
||||
|
||||
# Failide loomine käsuga
|
||||
|
||||
Juhendite kirjutamisel tuleb abiks kui terve käsk koos sisuga on kopeeritav:
|
||||
@ -89,3 +119,42 @@ cat << \EOF > failinimi
|
||||
See on faili sisu
|
||||
EOF
|
||||
```
|
||||
|
||||
|
||||
# Faili sisu muutmine
|
||||
|
||||
Järgnev käsk muudab failis /etc/nsswitch.conf rea mille algus on ```passwd: ```
|
||||
reaks ```passwd: compat winbind``` lisades eelmisele reale
|
||||
kommentaari koos kuupäeva ja vana väärtusega:
|
||||
|
||||
```bash
|
||||
sed /etc/nsswitch.conf -e "s/^\(passwd: .*\)/# $(date): \1\npasswd: compat winbind\n/" -i
|
||||
```
|
||||
|
||||
Järgnev käsk muudab failis /etc/ssh/sshd_config
|
||||
```PermitRootLogin``` valiku rea alati ```PermitRootLogin yes``` suguseks,
|
||||
ka siis kui see rida on välja kommenteeritud.
|
||||
Extended regexiga (-r) saab kasutada küsimärki regexis,
|
||||
aga backref on ka natuke teistmoodi kirjutatud:
|
||||
|
||||
```bash
|
||||
sed -r /etc/ssh/sshd_config -e "s/^ *(#? *PermitRootLogin .*)/# $(date): \\1\nPermitRootLogin yes/" -I
|
||||
```
|
||||
|
||||
Rekursiivselt vaheta failides ```kati``` välja ```mati``` vastu,
|
||||
siinkohal ```kati``` on regulaaravaldis:
|
||||
|
||||
```bash
|
||||
find /tee/kaustani -type f -exec sed -i -e 's/kati/mati/' {} \;
|
||||
```
|
||||
|
||||
# Failiõiguste korrastamine
|
||||
|
||||
Eeldusel et kodukataloogi pole ühtegi skripti salvestatud mille execute bit peaks püsti jääma,
|
||||
saab kodukataloogi failiõigused järgnevalt nulli lasta:
|
||||
|
||||
```bash
|
||||
find /home/lauri -type f -exec chown lauri:lauri {} \;
|
||||
find /home/lauri -type f -exec chmod 600 {} \;
|
||||
find /home/lauri -type d -exec chmod 700 {} \;
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user