Grundläggande scripting i Bash
Så för att hjälpa dig helt gratis tänker jag prata lite om enkla saker i unixliknande system och speciellt Linux.
Linux är bara en Kernel, kärna av operativsystemet. Den hanterar hårvara och är monolitik vilket innebär att den kommer paketerad med nästan alla drivrutiner för de flesta datorerna.
Bash, min favo som ersatta Python
Linux i sig själv är ju inte så användbar, så man har et till program som kallas skalprogram som kan tolka kommandon. På din datorn kan du nästan garanterat öppna en sökfuktion och söka efter CMD eller Terminal, och få ett skalprogram framför dig. Eftersom jag ansera att Windows är obrukbar för allt utom Microsoft produktet och datorspel så kommer jag utgår från att ud sitter i bash eller något annat på en unixlikande maskin.
Skalprogammet är ett av det viktigaste programmen du kan lära dig. Hela idén är att du skiver kommandon och får resultat. Exempelvis kan du skiva:
ls
Och bli serverad alla filer som finns i mappen du står i. För att byta mapp använder man cd, låt oss gå till våran Hem mapp:
cd
och sedan kolla vad vi har, Hem mappen är tänkt att vara platsen du har dina saker som config filer och allt du arbetare med. Låt oss se:
ls
För skapa nya mappar så skiver man mkdir. Låt mig visa:
mkdir alot-fun-dir
För att gå runt med cd måste man lik hur jag precis skapade mappen alot-fun-dir.
cd alot-fun-dir
och man går ur mappen såhär:
cd ..
Din terminal kan ha en förkortningsförmåga, för att göra livet lättare. På mitt system är tab tangenten, tangenten ovanför CapsLock och under paragraf tecknet, vänster om Q. Flytta dig in i alot-fun-stuff men när skriver namnet på mappen så testa att trycka tab och med lite tur kommer du få namnet fardigställt åt dig.
Så varför är detta bättre än att bara dra och klicka? Det är ett annat angrepsätt som ger dig förmågor som du med lite tur kan se. Låt mig visa:
touch alot-fun-dir/alot-file.alot; echo "Läser du detta är du så duktigt Senpai!" > alot-fun-dir/alot-file.alot
Vad jag gjorde på ditt system var att jag skapade en fil kallad alot-file.alot i mappen vi har skapat och sedan pipade jag in text i den filen. Du kan läsa innehållet i den filen med följande kommando:
cat alot-fun-dir/alot-file.alot
Låter invecklat men låt mig visa en superkraft:
rm alot-fun-dir/alot-file.alot; touch alot-fun-dir/alot-list-of-dir.alot; ls >> alot-fun-dir/alot-list-of-dir.alot;
Har raderar jag först filen vi nyss skapade, jag skapar en ny som heter alot-list-of-dir.alot, sedan listar jag allt som ligger i mappen du står i och placera den texten i filen jag skapade. Men vi behöver lite hjälp tror jag, så låt oss läsa manualerna för detta.
rm --help
Du bör få upp en lista av saker som kan göra med rm, i linux system finns det fyra kommandon som man behöver för att hitta information, oftast. Dessa är:
man rm
info rm
rm -h
rm --help
Alla av dessa kommer inte fungera, men eftersom du har sett hur man använder cd och cat kan du nog lista ut att man och info är egna program. På tal om program, vi är sugna på att veta om något program finns i vårat system. För att lista våra binära program så kan man skiva detta:
ls /bin
Lite mycket, och svårtläst, men frukta ej! Låt oss använda programmet grep för att söka efter cat:
ls /bin | grep cat
Så bör du få en lista av allt som har ordet cat i sig. Vad jag gär är att jag listar allt som finns i /bin sedan "pipar" jag allt till grep, grep läser sedan ordet cat och spottar ur sig alla rader med cat i sig. Låt oss hitta om greps dokumentation har några webbsidor där vi kan klaga. Webbsidor kommer oftast i protokollet HTTP så vi testar:
man grep | grep http
Men titta! En full manual på webbsida säger dom? Coolt. När du använder saklprogrammet bash kan man även skriva in dessa komandon i en fil sedan utföra dom från filen:
rm -r alot-fun-dir; touch alot-bash-script.alot; echo 'echo "I'm a bash script!"' > alot-bash-script.alot; bash alot-bash-script.alot
Som du ser får du en text från scriptet. Du kan även använda cat för att läsa innehållet av filen. Du kan sannolikt editera saker i den med nano. Jag rekomenderar i de starkaste orden att läsa alla bash scripts innan du utför dom. Låt mig visa:
nano alot-bash-script.alot
Följadne operander (saker som ändrar beteände) kan du få helt gratis nu, jag använder ju dom hela tiden. ">" placerar det som du får ut in i en fil, den skriver över det också och därmed försvinner det ursprungliga innehållet. ">>" funkar dock som att du placerar in det i slutet av filen, ";" säger att jag kommer göra ett nytt kommando nu, medans "|" placerar det jag fick från ett kommando in i ett annat program, vilket är att pipa det.