Van-e értelme a shell scriptek (bash) megtanulásának Linux kezdőként?
Nem vagy bejelentkezve.

# 1 2011.07.25. 14:10:07
Van-e értelme a shell scriptek (bash) tanulásának Linux kezdőként?
Néhány hónapig dolgoztam az Arch Linuxszal és nagyon tetszik, de a bashhoz még nem volt sok közöm.
Egy másik fórumban azt mondtam, hogy Linuxra váltottam (a sok ok egyike), mert nem az ellenkezőjét, hanem az operációs rendszeremet akarom irányítani.
Aztán valaki azt írta nekem, hogy képesnek kell lenniem a parancsfájlok (bash) megfelelő elsajátítására.
Felmerül azonban a kérdés, hogy van-e értelme Linux kezdőként tanulni a shell parancsfájlokat, ha nem sokat tud magáról a rendszerről?
Eddig csak azt tudom, hogy a bash ugyanaz, mint a batch a Windows-ban, csak erősebb, és a Windows-ban csak annyit használtam, hogy egyszerre több programot indíthassak, vagy más vad dolgokra.
Pontosan mit érhet el még mindig bash-val?
Milyen előnyei vannak a bash elsajátításának azokhoz az emberekhez képest, akik egyáltalán nem képesek rá?
Alternatív megoldásként valaki azt javasolta, hogy képes legyen a Python elvégzésére, mert ugyanezt megteheti vele. Ez helyes?
Mivel már régóta szerettem volna megtanulni a Pythont, ez lenne a megfelelő alkalom (a jó gyakorlati példák miatt), de ha nem működik a Python, a következő könyvet szándékozom megvásárolni:
Mivel nagyon drága, először is szeretnék veletek megbizonyosodni arról, hogy ez ésszerű befektetés-e annak érdekében, hogy egyáltalán megvalósíthassam céljaimat, vagy optimálisabb utat kell-e járnom?
Nagyon hálás vagyok a segítségért.
# 2 2011.07.25. 14:27:50
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Először is: előbb-utóbb úgyis meg kell tanulnia a Bash-t (vagy egy másik shell script nyelvet, például zsh vagy tcsh). Ez az úgynevezett alapszerkezet. A szkriptnyelveket valójában nem olyan nehéz megtanulni, és felmenthetnek a sok kézi munkától. Ezenkívül a Windows alatt van a Powershell, hogy kijavítsa ezt a hiányosságot. még egy teljesen grafikus operációs rendszerrel sem lehet megkerülni az alapot. Ha hisz a Windows rendszergazdáinak, a Powershell még jobb/kiterjedtebb/kényelmesebb, mint például a Bash.
Elméletileg bármit el lehet érni a Bash-szal, mivel a nyelvet turingi teljesnek tekintik. De biztosan nem akar mindent végrehajtani egy szkript shell nyelvével. De az alapvető feladatok, például a program indítási logikája vagy hasonló, könnyen megvalósíthatók. Még akkor is, ha egyszerre csak néhány programot szeretne elindítani, csomagolja őket egy shell szkriptbe.
Először magáról a könyvről nem tudok mit mondani, de először nem hiszem, hogy a Galileo-könyvek rosszak lennének. Általában meglehetősen felszínesek (személyes vélemény), de kezdőknek is alkalmasak. De több mint elegendő szabad erőforrás van a bash-on keresztül (egyébként a Python is). Csak használja a választott keresőmotort, és örüljön. És megtanulják bash
# 3 2011.07.25. 14:38:48
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Határozottan: tanulj bash-t (bash)!
Ehhez nem kell könyvet vásárolnia. A net erőforrásai gazdagok, nincs szükség feltétlenül mélyreható ismeretekre, de az alapok nagyon hasznosak. Normális esetben úgyis megtanulja a futást: amikor csak szüksége van a bash-ra, megkeresi az opciókat és parancsokat, majd elkezd programozni! ^^
Az idióta módszert is alkalmazom: tudom, mi történik valójában, és amikor szükségem van rá, utánanézek (bár egyes dolgok egyébként megszilárdulnak); Közben már létrehoztam több tucat szkriptet a különféle folyamatok automatizálására, mind lineáris, mind interaktív módon.
Összekapcsoltam a következő két oldalt, amelyek sokat magyaráznak értelmesen, és alkalmazási példákat is adnak:
http://www.bin-bash.de/index.php
http://linuxseiten.kg-it.de/index.php?i… sh_befehle
# 4 2011.07.25. 16:14:22
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Köszönöm, SaThaRiel és deviáns, a részletes válaszokat.
Srácok sokat segítettetek nekem.
Tehát valószínűleg megveszem a könyvet, és átolvasom az itt közzétett webhelyeket.
Az alkalmazási terület számomra még nem teljesen világos.
Valaki a fórumban segített nekem egy bash szkript segítségével, amely automatikusan létrehoz egy VPN-kapcsolatot, amikor egy bizonyos WLAN hálózathoz csatlakozom, és ez nagyjából meggyőzött (akkor még nem is tudtam, hogy te is csinálhatsz hasonlót), vagy ez a diszpécser szkript eltér a hálózatkezelőtől?
@deviant: Mondanál néhány példát a tucatnyi szkriptedről?
Mert mint a WLAN esetében, garantáltan vannak olyan dolgok, amelyekről nem is tudtam, hogy lehetségesek.
# 5 2011.07.25. 16:43:28
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Azt is javasoljuk, hogy ismerkedjen meg a sok kicsi eszköz (awk, sed, grep, bz stb.) Funkcionalitásával. Felmentheti a sok munkától, és nagyon praktikus. A fennmaradó idő magától felmerül, ahogy a deviáns írta ^^
# 6 2011.07.25. 16:43:59
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
# 7 2011.07.25. 16:47:45
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
A legnyilvánvalóbbak a start szkriptek: Mi fog végrehajtódni, amikor bejelentkeztem a Linux-ba?
A DE-k saját opciókat kínálnak, beleértve az Openboxot és hasonlókat, a Compiz nem:
Tehát az elején futtatom ezt a szkriptet, amelyből több szkript fut.
A "winebinds" a/home mappába köt néhány mappát, amelyeket áthelyeztem egy másik, az összes telepített Linux rendszer számára elérhető partícióra.
A "wlan0ff" egy kis szkript, amelyet az angol wikiben is feltettem. Ellenőrzi, hogy csatlakoztam-e egy hozzáférési ponthoz, és ha nem található ESSID, akkor az energiatakarékosság érdekében teljesen kikapcsolja a WLAN hardvert.
Ellenkező esetben kis parancsláncokról van szó, amelyek alaphelyzetbe állítják és újraindítják a pppoe kapcsolatot, értesítéseket küldenek (pl. Ha az akkumulátor lemerült), vagy késleltetik a leállítást az összes letöltés végéig:
(Megjegyzés: A szkript egy részét kölcsönadták valahol, és hozzáadták a szkriptemhez, sry, ha valaki úgy érzi, hogy nem írják jóvá ^^)
Gondoltam a forgalom közvetlen módjának elolvasására, de végül ezzel a megoldással végeztem.
Ezenkívül néhány játékhoz készítettem szkriptet, amelyek állítólag javítják a teljesítményt azáltal, hogy bezárják a conky-t és az easystroke-t, deaktiválják az érintőpadot, megváltoztatják a billentyűtérképet, majd elindítják a játékot (valamint megfordítom ezeket a változásokat, miután befejeződött, conky és easystroke újra kezdet stb.
Csak a móka kedvéért írtam egy kis programot, amely megváltoztatja a billentyűtérképet és különféle információkat szolgáltat - 100 sort, amelyek nem csinálnak semmit, amit a "setxkbmap" nem tenne meg. de unatkoztam és leültem a vonatra
Az ilyen parancsfájlok célja olyan parancsok automatizálása, amelyeket nem akar minden alkalommal manuálisan megadni, vagy amelyeket gyorsan elfelejt.
Szerkesztés: A szkriptek nagyon hasznos használata egy olyan cronjob, amely automatikusan ellenőrzi a frissítéseket, és ezt a Conky segítségével jelzi. Ennek érdekében már több értelmes megközelítést tettek közzé itt a fórumban, amelyek nem térnek el jelentősen.
A bejegyzést deviáns módosította (2011.07.25. 17:07:29)
# 8 2011.07.25. 19:04:21
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
itt van egy példa tőlem. A szkript arra szolgál, hogy megnyissam a külső merevlemezemet LUKS-szel titkosítva, és csatlakoztassam vagy bezárjam egy bizonyos könyvtárba. Azt írtam, hogy mielőtt Thunar kezelni tudta volna a LUKS partíciókat.
A hozzászólást SiD módosította (2011.07.25. 19:06:01)
# 9 2011.07.26. 4:18:51
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
. Mert mint a WLAN esetében, garantáltan vannak olyan dolgok, amelyekről nem is tudtam, hogy lehetségesek.
Feltételezhetjük, hogy szinte minden lehetséges, aminek van értelme és amelyet nem korlátoznak a hardver gyengeségei. Ha szükséges, csak kérdezzen
# 10 2011.07.26. 9:40:32
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
A Shell szkriptek "nagyobb" dolgok, például az aurget megvalósítására is használhatók. Ez egy program az AUR programok telepítésére, az AUR keresésére, ...
# 11 2011.07.26. 11:56:21
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Nos, bármit megtehetsz szinte bármilyen nyelvvel. De valamikor eljutsz odáig, hogy kényelmesebb lőni magad.
# 12 2011.07.26. 12:39:53
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Nos, bármit megtehetsz szinte bármilyen nyelvvel. De valamikor eljutsz odáig, hogy kényelmesebb lőni magad.
Már szerettem volna valami ilyesmit írni és a praktikummal előállni; hogy nem mindig van értelme olyat írni magadnak, amit mások már írtak, különösen akkor, ha az erőfeszítés egyértelműen meghaladja a profitot; de természetesen ez is így működik.
# 13 2011/07/30 13:15:51
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Tehát, ha könyvet akar vásárolni, akkor ajánlok egy referencia művet. Nézz körül, és csodálkozni fogsz, mi történik a bash-ban!
Akkor vettem meg, amikor elkezdtem a Linuxot, és még azt is, hogy tudjam, hol keressem a rendszert és mindenekelőtt mit! De én is a Klickibunti világból jöttem, és soha nem hallottam még DOS-ról vagy héjról. Az utolsó kapcsolat a szkript nyelvével Basic volt a C16-ból .
A könyvről: Linux - Kurz & gut, 9,90 euróba kerül
# 14 2011.07.08. 22:21:19
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Tehát, ha könyvet akar vásárolni, akkor ajánlok egy referencia művet. Nézz körül, és csodálkozni fogsz, mi történik a bash-ban!
Akkor vettem meg, amikor elkezdtem a Linuxot, és még azt is, hogy tudjam, hol keressem a rendszert és mindenekelőtt mit! De én is a Klickibunti világból jöttem, és soha nem hallottam még DOS-ról vagy héjról. Az utolsó kapcsolat a szkript nyelvével Basic volt a C16-ból .
A könyvről: Linux - Kurz & gut, 9,90 euróba kerül
Vagy valami különlegesebb, ez a Bash - Kurz & Gut, szintén 9,90 euró
# 15 2011.08.08. 19:20:48
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Hé,
Jürgen Wolf Galello Verlag "Shell Programming" című könyvét ajánlom. Jómagam ezt mindig referencia munkaként használom, ha szükséges.
Mindenesetre van értelme legalább rendszeresen kipróbálni a különféle egybetéteket és a csöveket. Már csak azért is, hogy gyakorolja a zsonglőrködést a reguláris kifejezésekkel (amelyek elől sajnos nem menekülhet el). Most nem azt tanácsolom, hogy megtanuljam a szkripteket, mint egy "igazi programozási nyelvet". Szükség esetén jobb lenne néhány példát másolni vagy adaptálni egy adott célra. Például egy mini szkriptet használok, amelyet magam írtam a következő feladathoz: Az újonnan "megszerzett" játékok hitelességét ellenőrizni kell azáltal, hogy összehasonlítjuk a CRC32 ellenőrző összegét egy adatbázisból, és ha sikeres, automatikusan átnevezzük az előre meghatározott séma szerint. Az adatbázist gyakran frissíteni kell, és formátumát html-ről csv-re kell konvertálni.
Üdvözlet
# 16 2011.08.17. 10:57:42
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
Most nem azt tanácsolom, hogy megtanuljam a szkripteket, mint egy "igazi programozási nyelvet".
Találok egy jó tippet.
Lássuk pragmatikusan: A Shell szkriptek alapvetően nem mások, mint (például a DOS kötegelt fájlok egyszerre) egy sor különféle parancs/program, amelyeket "egy menetben" kell elindítani és feldolgozni.
Semmi különös.
Ahol a "programozás", vagyis a logikai rész ismét játékba lép, amikor bizonyos folyamatokat csak bizonyos körülmények között kell végrehajtani. Vagy megismételhető bizonyos feltételekig vagy bizonyos számú alkalommal.
És látni fogod: ezek az eszközök, hogy az emberek egyáltalán ellenőrizhessék (programozhassák) a folyamatot, minden más programozási nyelven elérhetők. Ami közös bennük: meg kell értenem, meg kell értenem, elvonatkoztatnom kell egy feladatot, és logikus sorrendbe kell hoznom. ehhez olyan dolgokat használok, mint döntések (ha/más), ciklusok, függvények. Valami ilyesmi meglehetősen elvontan fogalmazható meg egy konkrét "nyelv" segítsége nélkül.
A megvalósítás során később észreveszi: Ha elsajátítottam a probléma-> út-> megoldás ezen művészetét, akkor csak a használni kívánt nyelv szintaxisát kell megvizsgálnom. Tudom, hogy minden nyelv olyasmit kínál, mint a „döntés”, és tudom, hogy a „döntés” hogyan segít a konkrét lépésben. Tehát csak meg kell néznem a szintaxist: Hogyan csinálják XYZ-szel.
És megtanulod értékelni az egyik nyelv előnyeit a másikkal szemben, képes leszel azt mondani: Ah, például a Ruby jobban megfelel ennek a projektnek, mint amikor Bash shell szkriptel próbálom ki.
A shell szkriptek a legalkalmasabbak a kezdő IMHO számára, amikor kis "segítőkre" van szükség.
Tegyük fel, hogy minden nap meg kell néznem egy adott naplófájlt, hogy lássam: a) Történt-e valami konkrét (bejegyzés), és milyen érték van benne.
Eddig ezt tettem a nano-> Nyitott-> Olvassa el vagy a Keresés-> Csinálj valamit/ne csinálj valamit, ha megtalálod, amit akarsz.
Valami ilyesmi csodálatos "forgatókönyvként".
És olvasás: A Shell szkriptek elég könnyen olvashatók (mivel gyakran rövidek és csak kis feladatokra szánják őket). Például az /etc/rc.d/startskipte. Vagy az rc.sysinit.
Látni: "Hogyan csinálták?" és olyan konstrukciókat, amelyeket nem ért azonnal, keressen fel online vagy könyvben, amelyek az IMHO jelentősen hozzájárulnak a "szkript nyelv tanulásához" és általában a "programozás megtanulásához".
Jómagam csak egy eléggé vacak "programozó" vagyok, aki szereti a Rubyt;-), és az összes "kész" programot többnyire puszta lustaságból hoztam létre. Gyakran csak elkezdek valamit, ami még soha nincs kész (mert nincs szükség). Ennek ellenére minden alkalommal valami újat tanulok; és mégis túl gyakran kell utánanéznem a szintaxisnak (rossz memória). De néhány év után mindig tudom, hogy * mire kell figyelnem.;-)
# 17 2011.08.10. 4:04:50
Re: Van-e értelme a shell szkriptek (bash) tanulásának Linux kezdőként?
A bash különösen jó, ha valamit keresel. Például, ha van egy mappája, amely sok különböző fájlt tartalmaz, és az összes mp3 fájlt át akarja helyezni egy másik mappába, akkor ez sok időbe kerülhet. A bash-szal viszont meghívod a parancsot