From 6319633122e8cc12786361a71b942381f80f9f0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Wed, 22 Jan 2020 14:43:35 +0100 Subject: Do lab1 --- labb1/mitt_skript.sh | 116 ++++++++++++++++++++++++++++++++++++++++++++++++++ labb1/pythonskript.py | 45 ++++++++++++++++++++ 2 files changed, 161 insertions(+) create mode 100644 labb1/mitt_skript.sh create mode 100644 labb1/pythonskript.py (limited to 'labb1') diff --git a/labb1/mitt_skript.sh b/labb1/mitt_skript.sh new file mode 100644 index 0000000..89f6ee5 --- /dev/null +++ b/labb1/mitt_skript.sh @@ -0,0 +1,116 @@ +#!/bin/bash + +# Rader som börjar med ett # tolkas som kommentarer + + + + + + + + + + + + + + +#hPYQbWI2Hk1Sf7WlA7uHm6B4JTQJrFkJY4YSyBI1HGEYCPZDLV9lhF5gTBeRW5UGgvUIQb0Kkdj5sw +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#hPYQbWI2Hk1Sf7WlA7uHm6B4JTQJrFkJY4YSyBI1HGEYCPZDLV9lhF5gTBeRW5UGgvUIQb0Kkdj5sw +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#hPYQbWI2Hk1Sf7WlA7uHm6B4JTQJrFkJY4YSyBI1HGEYCPZDLV9lhF5gTBeRW5UGgvUIQb0Kkdj5sw +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p +#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u +#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5 +#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N +#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p + + +# ,_-=(!7(7/zs_. +# .=' ' .`/,/!(=)Zm. +# .._,,._.. ,-`- `,\ ` -` -`\\7//WW. +# ,v=~/.-,-\- -!|V-s.)iT-|s|\-.' `///mK%. +# v!`i!-.e]-g`bT/i(/[=.Z/m)K(YNYi.. /-]i44M. +# v`/,`|v]-DvLcfZ/eV/iDLN\D/ZK@%8W[Z.. `/d!Z8m +# //,c\(2(X/NYNY8]ZZ/bZd\()/\7WY%WKKW) -'|(][%4. +# ,\\i\c(e)WX@WKKZKDKWMZ8(b5/ZK8]Z7%ffVM, -.Y!bNMi +# /-iit5N)KWG%%8%%%%W8%ZWM(8YZvD)XN(@. [ \]!/GXW[ +# / ))G8\NMN%W%%%%%%%%%%8KK@WZKYK*ZG5KMi,- vi[NZGM[ +# i\!(44Y8K%8%%%**~YZYZ@%%%%%4KWZ/PKN)ZDZ7 c=//WZK%! +# ,\v\YtMZW8W%%f`,`.t/bNZZK%%W%%ZXb*K(K5DZ -c\\/KM48 +# -|c5PbM4DDW%f v./c\[tMY8W%PMW%D@KW)Gbf -/(=ZZKM8[ +# 2(N8YXWK85@K -'c|K4/KKK%@ V%@@WD8e~ .//ct)8ZK%8` +# =)b%]Nd)@KM[ !'\cG!iWYK%%| !M@KZf -c\))ZDKW%` +# YYKWZGNM4/Pb '-VscP4]b@W% 'Mf` -L\///KM(%W! +# !KKW4ZK/W7)Z. '/cttbY)DKW% -` .',\v)K(5KW%%f +# 'W)KWKZZg)Z2/,!/L(-DYYb54% ,,`, -\-/v(((KK5WW%f +# \M4NDDKZZ(e!/\7vNTtZd)8\Mi!\-,-/i-v((tKNGN%W%% +# 'M8M88(Zd))///((|D\tDY\\KK-`/-i(=)KtNNN@W%%%@%[ +# !8%@KW5KKN4///s(\Pd!ROBY8/=2(/4ZdzKD%K%%%M8@%% +# '%%%W%dGNtPK(c\/2\[Z(ttNYZ2NZW8W8K%%%%YKM%M%%. +# *%%W%GW5@/%!e]_tZdY()v)ZXMZW%W%%%*5Y]K%ZK%8[ +# '*%%%%8%8WK\)[/ZmZ/Zi]!/M%%%%@f\ \Y/NNMK%%! +# 'VM%%%%W%WN5Z/Gt5/b)((cV@f` - |cZbMKW%%| +# 'V*M%%%WZ/ZG\t5((+)L\'-,,/ -)X(NWW%% +# `~`MZ/DZGNZG5(((\, ,t\\Z)KW%@ +# 'M8K%8GN8\5(5///]i!v\K)85W%%f +# YWWKKKKWZ8G54X/GGMeK@WM8%@ +# !M8%8%48WG@KWYbW%WWW%%%@ +# VM%WKWK%8K%%8WWWW%%%@` +# ~*%%%%%%W%%%%%%%@~ +# ~*MM%%%%%%@f` +# ''''' + + +echo "Detta är ett bash-skript." +echo "Varje rad i denna fil kommer tolkas som om en användare hade skrivit den" +echo "i terminalen." +echo "" +echo "Kommandot echo skriver ut strängar." + +# UPPGIFT! +# Lägg till kommandon under denna rad som listar innehållet i din hemkatalog. + +ls ~/ + + + + + + + +# Du har nu hittat rätt fil. diff --git a/labb1/pythonskript.py b/labb1/pythonskript.py new file mode 100644 index 0000000..6e0679f --- /dev/null +++ b/labb1/pythonskript.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python3 + +# OM EXEKVERBARA TEXTFILER +# +# När en exekverbar textfil körs i terminalen tittar systemet (dvs skalet på den +# _första_ raden i filen. Om den första raden börjar med tecknena #! kommer +# resten av raden att användas som en sökväg till det program som ska användas +# för att tolka resten av filen. +# +# När denna fil körs i terminalen kommer python3 att användas för att tolka +# innehållet. För användaren som kör filen är det ingen skillnad på att köra ett +# kompilerat program och ett skript. +# +# Den här filen heter pythonskript.py, men filnamnet har egenligen ingen +# betydelse. Om man döper om denna fil till dota kommer samma sak att hända när +# man kör den. +# +# Det enda som har någon betydelse är om användaren har rätt att exekvera filen, +# och innehållet i filen. + +# Här importeras modulen sys som hjälper oss interagera med systemet +import sys + +def demonstrate_sysargv(): + print("I variabeln sys.argv hittar vi en lista vars första element är") + print("kommandot som skrevs. Efterföljande element i listan är alla") + print("argument som angavs. Se här:\n") + print(sys.argv) + print("\nProva att köra detta kommando igen och skicka med några argument") + print("också!") + +# UPPGIFT! +# +# Er uppgift är att ta bort ordet pass i funktionen nedan och skriva Pythonkod +# som skriver ut det första argumentet som skickades till detta skript. +# +# När ni gjort det, ändra på anropet längst ner i denna fil så att funktionen +# say_hello() körs istället. +def say_hello(): + print(sys.argv[1]) +# Här är anropet till den funktion som ska användas när detta skript körs. +# När ni skrivit klart funktionen say_hello(), ändra anropet nedan så +# att den körs istället! +say_hello() + -- cgit v1.2.1