Linux:Átirányítások, szűrők
(Változatok közti eltérés) (→Szorgalmi feladat) |
(→Átirányítások) |
||
(21 közbeeső változat nincs mutatva) | |||
1. sor: | 1. sor: | ||
= Átirányítások = | = Átirányítások = | ||
- | <kivonat>>, >>, <</kivonat> | + | <kivonat>>, >>, <<, 1>, 2></kivonat> |
* Az ls parancs kimenetét irányítsa át a /tmp/lista-<username>.txt fájlba, ahol az <username> helyére az Ön bejelentkezési nevét helyettesítse be! <megoldas> | * Az ls parancs kimenetét irányítsa át a /tmp/lista-<username>.txt fájlba, ahol az <username> helyére az Ön bejelentkezési nevét helyettesítse be! <megoldas> | ||
<code lang="bash"> | <code lang="bash"> | ||
32. sor: | 32. sor: | ||
== Eszközfájlok== | == Eszközfájlok== | ||
- | + | <kivonat>dd</kivonat> | |
* Hozza létre a /tmp könyvtárat! Az esetleges hibaüzeneteket ne jelenítse meg! <megoldas> | * Hozza létre a /tmp könyvtárat! Az esetleges hibaüzeneteket ne jelenítse meg! <megoldas> | ||
<code lang="bash"> | <code lang="bash"> | ||
feri@columbo:~$ mkdir /tmp 2>/dev/null | feri@columbo:~$ mkdir /tmp 2>/dev/null | ||
</code></megoldas> | </code></megoldas> | ||
- | + | * Készítsen egy 5000 bájtos, zéró karakterekkel feltöltött fájlt! <megoldas> | |
+ | <code lang="bash"> | ||
+ | feri@columbo:~$ dd if=/dev/zero of=~/zeroFile bs=1000 count=5 | ||
+ | </code></megoldas> | ||
+ | * Hogyan készítene ISO image-et a szerver CD meghajtójában levő lemezről? (Csak rendszergazdaként hajtható végre).<megoldas> | ||
+ | <code lang="bash"> | ||
+ | feri@columbo:~$ dd if=/dev/cdrom of=~/cd.iso bs=1024 | ||
+ | </code></megoldas> | ||
== A /proc fájlrendszer == | == A /proc fájlrendszer == | ||
74. sor: | 81. sor: | ||
feri@aries:~$ cat /proc/filesystems | feri@aries:~$ cat /proc/filesystems | ||
</code></megoldas> | </code></megoldas> | ||
- | |||
= Szűrők = | = Szűrők = | ||
114. sor: | 120. sor: | ||
feri@columbo:~$ cat /etc/passwd | grep ^root: | feri@columbo:~$ cat /etc/passwd | grep ^root: | ||
</code></megoldas> | </code></megoldas> | ||
- | * Hány olyan felhasználó van a rendszerben, akinek a login neve magánhangzóval kezdődik? <megoldas> | + | * Hány olyan felhasználó van a rendszerben, akinek a login neve magánhangzóval kezdődik (a kis- és nagybetűkre is figyeljen)? <megoldas> |
<code lang="bash"> | <code lang="bash"> | ||
- | feri@columbo:~$ cat /etc/passwd | grep ^[aeiou] | + | feri@columbo:~$ cat /etc/passwd | grep -i ^[aeiou] |
</code></megoldas> | </code></megoldas> | ||
* Hány olyan felhasználó van a rendszerben, akinek a shellje nem /bin/bash? <megoldas> | * Hány olyan felhasználó van a rendszerben, akinek a shellje nem /bin/bash? <megoldas> | ||
127. sor: | 133. sor: | ||
feri@columbo:~$ ls -l /dev | grep ^c | wc -l | feri@columbo:~$ ls -l /dev | grep ^c | wc -l | ||
</code></megoldas> | </code></megoldas> | ||
- | * Jelenítse meg az /etc/bashrc fájl azon nem üres sorait, amelyek nem megjegyzések (azaz nem #-tel kezdődnek)! <megoldas> | + | * Jelenítse meg az /etc/bash.bashrc fájl azon nem üres sorait, amelyek nem megjegyzések (azaz nem #-tel kezdődnek)! <megoldas> |
<code lang="bash"> | <code lang="bash"> | ||
- | feri@columbo:~$ cat /etc/bashrc | grep -v ^$ | grep -v ^# | + | feri@columbo:~$ cat /etc/bash.bashrc | grep -v ^$ | grep -v ^'#' |
</code></megoldas> | </code></megoldas> | ||
* Az előző feladatot oldja meg úgy, hogy ezeket a sorokat a home könyvtárába, egy bash.txt nevű fájlba írja ki! <megoldas> | * Az előző feladatot oldja meg úgy, hogy ezeket a sorokat a home könyvtárába, egy bash.txt nevű fájlba írja ki! <megoldas> | ||
<code lang="bash"> | <code lang="bash"> | ||
- | feri@columbo:~$ cat /etc/bashrc | grep -v ^$ | grep -v ^# >bash.txt | + | feri@columbo:~$ cat /etc/bash.bashrc | grep -v ^$ | grep -v ^'#' >bash.txt |
</code></megoldas> | </code></megoldas> | ||
* Hány olyan könyvtár van a /etc könyvtárban, melynek csoportjogai: r-x? <megoldas> | * Hány olyan könyvtár van a /etc könyvtárban, melynek csoportjogai: r-x? <megoldas> | ||
231. sor: | 237. sor: | ||
feri@columbo:~$ tac /etc/passwd | feri@columbo:~$ tac /etc/passwd | ||
</code></megoldas> | </code></megoldas> | ||
- | + | * Melyik shell hányszor fordul elő a /etc/passwd fájlban? <megoldas> | |
+ | <code lang="bash"> | ||
+ | cat /etc/passwd | cut -d: -f7 | sort | uniq -c | sort -n | ||
+ | </code></megoldas> | ||
+ | * Melyik shell fordul elő legtöbbször a /etc/passwd fájlban? <megoldas> | ||
+ | <code lang="bash"> | ||
+ | cat /etc/passwd | cut -d: -f7 | sort | uniq -c | sort -n | tail -n 1 | ||
+ | </code></megoldas> | ||
== Szorgalmi feladat == | == Szorgalmi feladat == | ||
* Írja ki az Euro hivatalos deviza árfolyamát, melyet a http://www.mnb.hu oldalon lehet megtekinteni! <megoldas> | * Írja ki az Euro hivatalos deviza árfolyamát, melyet a http://www.mnb.hu oldalon lehet megtekinteni! <megoldas> | ||
<code lang="bash"> | <code lang="bash"> | ||
- | wget --quiet | + | wget --quiet -O - 'https://www.mnb.hu/web/fooldal' | grep '<p class="sb01-side-banner__rate">' | cut -d '>' -f3 | cut -d '<' -f1 |
</code> | </code> | ||
- | Régebbi megoldás, ma nem működik: | + | Régebbi megoldás, a weblap átalakítása miatt ma már nem működik (ezért nem célszerű tartósan berendezkedni ilyen módszerekre): |
<code lang="bash"> | <code lang="bash"> | ||
+ | wget --quiet http://www.mnb.hu -O - | grep '.<big>[0-9]*,[0-9]*</big>' | head -1 | cut -d'>' -f2 | cut -d'<' -f1 | ||
+ | |||
wget --quiet http://www.mnb.hu -O - | grep 'ctl00_WebPartManager1_MNBEuroExchangeRate932554031_ctl00_euroPriceLabel' | cut -d'>' -f 2 | cut -d'<' -f 1 | tr ',' '.' | wget --quiet http://www.mnb.hu -O - | grep 'ctl00_WebPartManager1_MNBEuroExchangeRate932554031_ctl00_euroPriceLabel' | cut -d'>' -f 2 | cut -d'<' -f 1 | tr ',' '.' | ||
</code></megoldas> | </code></megoldas> | ||
+ | |||
+ | * Gyűjtse ki az e-mail címeket a http://www.jgytf.u-szeged.hu/tanszek/alkegeszseg/01_IntezetMenu/04Munkatarsak/munkatarsak.html oldalról! A példa mutatja, hogy miért nem szabad az e-mail címeket egyszerű formában weboldalon elérhetővé tenni: a spammerek ezeket könnyen begyűjthetik.<megoldas> | ||
+ | <code lang="bash"> | ||
+ | wget --quiet 'http://www.jgypk.u-szeged.hu/karrol/tanulmanyi-osztaly/tanulmanyi-osztaly-180924' -O - | grep -EiEio '\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b' | sort | uniq | ||
+ | </code> | ||
+ | </megoldas> |
A lap jelenlegi, 2023. március 29., 10:14-kori változata
Tartalomjegyzék |
Átirányítások
Kivonat: >, >>, <<, 1>, 2>
- Az ls parancs kimenetét irányítsa át a /tmp/lista-<username>.txt fájlba, ahol az <username> helyére az Ön bejelentkezési nevét helyettesítse be!
- Az /etc könyvtár conf-ra végződő fájljainak tartalmát másolja össze egyetlen fájlba, a /tmp/lista-<username>.txt-be! Mi történt annak korábbi tartalmával?
- A /tmp/lista-<username>.txt fájlhoz fűzze hozzá az aktuális dátumot és időt!
- Hozza létre a /tmp könyvtárat! Az esetleges hibaüzeneteket irányítsa át a hiba.txt fájlba!
Eszközfájlok
Kivonat: dd
- Hozza létre a /tmp könyvtárat! Az esetleges hibaüzeneteket ne jelenítse meg!
- Készítsen egy 5000 bájtos, zéró karakterekkel feltöltött fájlt!
- Hogyan készítene ISO image-et a szerver CD meghajtójában levő lemezről? (Csak rendszergazdaként hajtható végre).
A /proc fájlrendszer
- Milyen IDE eszközök találhatók a számítógépben?
- Milyen processzor van a számítógépben?
- Mennyi memória van a számítógépben?
- Milyen PCI-os eszközök vannak a rendszerben?
- Milyen ethernet kártya van a számítógépbe építve?
- Jelenítse meg a rendszerben használt I/O portokat!
- Milyen típusú és mekkora merevlemezek vannak a rendszerben? Keressen róluk egy-egy fényképet az Interneten! (A megoldásban feltételezzük, hogy SATA merevlemezek vannak a gépbe építve.)
- Milyen fájlrendszerek kezelésére képes a kernel?
Szűrők
Kivonat: grep, cut, wc, head, tail, tr, sort, uniq, tee, more (less, most), tac
- Jelenítse meg a /etc/passwd tartalmát oldalakra bontva! Hogyan lehet a következő oldalara lapozni, az előző oldalra ugrani, soronként fel- illetve továbblépni, szövegrészt keresni, illetve kilépni a pagerből?
- Az /etc/passwd fájlból jelenítse meg azokat a sorokat, amelyek tartalmazzák az sh karakterláncot!
- Az /etc/passwd fájlból jelenítse meg azokat a sorokat, amelyek nem tartalmazzák az sh karakterláncot!
- Az /etc/passwd fájlból jelenítse meg azokat a sorokat, amelyek r betűvel kezdődnek!
- Az /etc/passwd fájlból jelenítse meg azokat a sorokat, amelyek false-ra végződnek!
- Az /etc/passwd fájlból jelenítse meg azokat a sorokat, akiknek a login neve f-fel kezdődik!
- Az /etc/passwd fájlból jelenítse meg azokat a felhasználó neveket, akiknek a login nevében szerepel a tom szó!
- Az /etc/passwd fájlból jelenítse meg azokat a sorokat, amelyben a login név pontosan root!
- Hány olyan felhasználó van a rendszerben, akinek a login neve magánhangzóval kezdődik (a kis- és nagybetűkre is figyeljen)?
- Hány olyan felhasználó van a rendszerben, akinek a shellje nem /bin/bash?
- Hány blokkos eszközfájl van a /dev könyvtárban? Hány karakteres eszközfájl van ugyanebben a könyvtárban?
- Jelenítse meg az /etc/bash.bashrc fájl azon nem üres sorait, amelyek nem megjegyzések (azaz nem #-tel kezdődnek)!
- Az előző feladatot oldja meg úgy, hogy ezeket a sorokat a home könyvtárába, egy bash.txt nevű fájlba írja ki!
- Hány olyan könyvtár van a /etc könyvtárban, melynek csoportjogai: r-x?
- Jelenítse meg a root felhasználó aktuális havi bejelentkezéseinek történetét!
- Be van most jelentkezve a rendszergazda? Ha igen, mit futtat most?
- Hány különféle shell létezik a passwd fájlban?
- Írassa ki a bejelentkezettek listáját! Gondoskodjon arról, hogy ha valaki több példányban jelentkezett be, akkor is csak egyszer jelenjen meg a neve!
- Kik azok a felhasználók, akik ebben a hónapban bejelentkeztek a szerverre (a reboot felhasználó nem érdekel bennünket)?
- Írassa ki a felhasználók neveit ábécé sorrendben!
- A /etc/passwd file-ban hány sor kezdődik f-fel?
- Jelenítse meg a /etc/passwd első három sorát!
- Jelenítse meg a /etc/passwd utolsó hét sorát!
- Jelenítse meg a felhasználók névsorából az első, majd az utolsó 12 nevet! Meg tudja oldani ezt egy sor begépelésével is?
- Melyik felhasználó jelentkezett be először ebbe a hónapban?
- Hány sora van a /etc/passwd file-nak?
- Hány karakter van ugyenezen file utolsó 8 sorában?
- Hány karakter van az /etc könyvtár tartalomjegyzékében?
- Hány alkalommal jelentkezett be a root felhasználó ebben a hónapban?
- Jelenítse meg a /etc/passwd tartalmát rendezve!
- Jelenítse meg visszafelé rendezve a passwd fájlból kinyert UID-eket!
- Melyik a legnagyobb UID a /etc/passwd fájlban?
- Jelenítse meg az ábécébe rendezett passwd file tartalmának első 15 sorát!
- Hány sorból és karakterből áll az előző parancs kimenete?
- Írassa ki a felhasználók nevét úgy, hogy minden ékezetes karaktert cseréljen ékezet nélkülire, a szóköz karaktert pedig helyettesítse _ karakterrel!
- A felhasználók listájában törölje az összes j karaktert!
- Írassa ki a /etc/passwd tartalmát visszafelé!
- Melyik shell hányszor fordul elő a /etc/passwd fájlban?
- Melyik shell fordul elő legtöbbször a /etc/passwd fájlban?
Szorgalmi feladat
- Írja ki az Euro hivatalos deviza árfolyamát, melyet a http://www.mnb.hu oldalon lehet megtekinteni!
- Gyűjtse ki az e-mail címeket a http://www.jgytf.u-szeged.hu/tanszek/alkegeszseg/01_IntezetMenu/04Munkatarsak/munkatarsak.html oldalról! A példa mutatja, hogy miért nem szabad az e-mail címeket egyszerű formában weboldalon elérhetővé tenni: a spammerek ezeket könnyen begyűjthetik.