BASH. Bourne-Again SHell. Eric Elfving Institutionen för datavetenskap (IDA)
|
|
- Rut Bergqvist
- för 6 år sedan
- Visningar:
Transkript
1 BASH Bourne-Again SHell Eric Elfving Institutionen för datavetenskap (IDA)
2 BASH sh-compatible command language interpreter Kan startas på två sätt: Login shell Kör init-filer i följande ordning: /etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profile Kör filen ~/.bash_logout när bash avslutas Interactive Kör filen ~/.bashrc vid uppstart (kan skippas med flaggan norc) Inläsning och utskrift sker mot en terminal 2
3 3 SYNTAX (OCH SEMANTIK)
4 Syntax i BASH Ett kommando består av en lista av en sekvens av en eller flera pipelines Varje pipeline separeras av en av operatorerna ;, &, && eller och kan avslutas av ;, & eller <newline> Om en pipeline avslutas med & körs det i bakgrunden i ett subshell, med ; väntar bash istället tills körningen är klar. && och betyder logiskt och respektive logiskt eller. En pipeline skrivs som kommando1 [ kommando2 ] där utskriften från kommando1 skickas som inmatning till kommando2. 4
5 Sammansatta uttryck (list) list körs i ett eget subshell { list; } Gruppering, list körs i nuvarande miljö. { och } måste separeras från list med whitespace ((uttryck)) uttryck beräknas, vid ett nollskilt värde ges resultatet 1, annars 0 [[ villkor ]] Strängar kan jämföras med operatorerna ==,!=, < och >. Den högra strängen kan vara ett mönster. Med operatorn ~= tolkas den högra operanden som ett reguljärt uttryck 5
6 Villkor Det finns flera test att göra på filer: -a file Sann om file finns -d file Sann om file finns och är en mapp -f file Sann om file finns och är en vanlig fil -r, -w, -x file Sann om file finns och är läs-, skriv- respektive körbar Andra bra tester: -n string Sann om string har längd > 0 Val1 OP val2 OP kan vara en av eq, -ne, -lt, -le, -gt, -ge. Ger sant om val1 är lika, inte lika, mindre än, mindre eller lika med, större respektive större eller lika med val2 för heltalsvärden. 6
7 Upprepning for name [ in word ] ; do list ; done Fungerar likt for-loopen i Python, intererar över orden i word name tar nuvarande värde och list utförs för varje värde. for (( uttryck1 ; uttryck2 ; uttryck3 )) ; do list ; done Inledningsvis beräknas uttryck1. uttryck2 beräknas och om det är nollskilt utförs list och därefter beräknas uttryck3. Om uttryck2 blir noll avbryts upprepningen while list1; do list2; done Upprepa list2 tills den sista pipen i list1 returnerar 0 7
8 Selektion if list; then list; [ elif list; then list; ] [ else list;] fi if [[ -f ~/my_file ]] then echo my_file finns! else echo my_file finns inte! fi if [[ 4 -eq 5 ]] then echo "Något är väldigt fel" fi for file in $(ls) do echo $file done 8
9 Variabler Skapas likt python: var = värde Åtkomst med $: $var eller ${var} Det finns fler inbyggda variabler, t.ex. $HOME Path till hemkatalogen $EDITOR Default-editor för systemet (sätt till emacs ) $LANG Systemets språk (locale) $PATH En lista på mappar som används vid sökning av program $PS1 Bestämmer hur promten ser ut (senare) $PWD Nuvarande mapp $RANDOM Ger ett slumptal $TMPDIR Systemets tempkatalog (ofta /tmp) 9
10 Fält (array) BASH har endimensionella fält. Skapas enligt var[index] = värde Index ska vara ett heltalsvärde (0 och uppåt) Tilldelning kan också ske enligt var=(värde1, värde2,, värden) Åtkomst sker med ${var[index]} För att komma åt alla värden som en lista kan man använda * som index 10
11 Utvidgning (expansion) Inmatade ord utvidgas på sju olika sätt; Brace expansion Ett sätt att generera strängar. a{b,d,f}e => abe ade afe a{b..d}e => abe ace ade Kan nästlas Tilde expansion cp {orginal,kopia}.py cp min_fil.{py,py_bak} echo ~ => /home/eriel echo ~torjo => /home/torjo Om ett ord inleds med tilde (~) anses alla tecken fram till första / vara ett tilde-prefix. Om prefixet är noll tecken långt byts tilde-tecknet ut mot $HOME annars byts det ut mot hemkatalogen för användaren som motsvarar prefixet. Om det inte finns någon användare med det namnet lämnas ordet oförändrat 11
12 Utvidgning (expansion) Parameter expansion $parameter byts ut mot dess värde. Kan skrivas ${parameter} för att göra det tydligare Det finns flera varianter, t.ex; ${par:-word} Använd word om par inte är satt ${par:offset[:length]} Ta fram en delsträng av $par från tecken offset till slutet av strängen, dock max length tecken. Command substitution $(kommando) eller kommando kör kommando och byts ut mot resultatet av körningen. var= Eric echo $vars => echo ${var}s => Erics echo ${var:2} => ic echo ${var:0:2} => Er for file file in $(ls) in $(ls) do echo $file done 12
13 Utvidgning (expansion) Arithmetic expansion $((uttryck)) beräknar uttryck och byts ut mot resultatet av beräkningen. Går att använda samma artimetiska och logiska operatorer som i C. var=5 echo $(($var+6)) => 11 echo $((var++)) => 5 echo ${var} => 6 echo $((++var)) => 7 Process substitution <(list) och >(list) skapar temporära filer med utskrift respektive indata till kommandot list Word splitting De ord som finns kvar efter ovanstående steg delas vid förekomst av vita tecken echo <(echo "hej") /dev/fd/63 cat <(echo "hej") <(echo "du") hej du Pathname expansion Varje ord som innehåller tecknen *,? och [ anses vara ett mönster och byts ut mot en alfabetiskt sorterad lista av ord som matchar 13
14 Mönstermatchning Om ett mönster hittats matchas det enligt följande regler * => Noll eller flera tecken? => Ett tecken [ ] => Ett av de tecken som innesluts av [ och ] Sammansatta mönster Flera mönster kan slås samman med *(pattern) Noll eller flera förekomster av pattern?(pattern) Noll eller en förekomst av pattern +(pattern) En eller flera förekomster av Endast ett av de givna mönstren!(pattern) Allt utom pattern Övriga tecken matchas endast mot sig själv 14
15 Omdirigering Istället för att läsa och skriva från terminalen kan det ske med hjälp av filer. Med operatorn > skickas utskriften till en fil och med < läses en fil istället för användarinmatning ls > files.txt my_program < indata Man kan även använda omdirigering för att få felmeddelanden (stderr) på fil my_program 2> errors > output > skriver över gammalt innehåll, >> lägger till i slutet av filen my_program >> output.log 15
16 Alias Med hjälp av alias kan man få BASH att byta ut ett ord mot ett annat ord alias ls='ls -l' unalias ls Bra att ha för jobbiga kommandon men oftast bättre med en funktion 16
17 Funktioner [function] name() sammansatt-uttryck Definierar funktionen name. Om man vill kan antingen det reserverade ordet function eller parenteserna utelämnas Funktioner anropas som vanliga kommandon Variabler delas helt mellan funktioner och anroparen. Detta kan ändras genom användning av local Endast positionella parametrar, åtkomst via $parameternummer med start från 1. I $# lagras antal parametrar. Alla parametrar kan kommas åt med $@ function fun() { a=4; } fun echo $a b=6 function fun2() { local b b=5 } fun2 echo $b 17
18 Funktioner function fun() { for p in "$@" do echo $p done } fun hej du hej du fun hej du hej du 18
19 Promten Bash kan visa användaren lite information om den körs interaktivt Om bash är redo att ta emot kommandon visas $PS1. $PS2 visas när mer inmatning krävs Variablerna kan innehålla ett flertal specialtecken, tex. \h Datornamn \w Namnet på nuvarande mapp (full path) \u Användarnamn \! Kommandots historiknummer 19
20 Job Med job control menas möjligheten att stoppa en process för att senare återuppta det. Bash kopplar ett job med varje pipeline Med hjälp av Ctrl-Z sätts en process i vila och bash fortsätter. Ctrl- Y sätter processen i vila vid nästa inläsningsoperation Bra kommandon i samband med job control: jobs Listar aktuella jobs (åtkomst till job med %n) bg [%n] Kör jobb nummer n i bakgrunden (egen process) fg [%n] Återta job n i denna process ( låser bash) kill [pid] [jobid] Stäng ner process pid eller job jobid 20
21 Historik Som standard sparas alla kommandon till filen $HISTFILE (~/.bash_history) vid avslutad session För att återupprepa ett tidigare kommando kan man använda!;!n Kör kommando nummer n!-n Kör det n:e föregående kommandot!! Kör föregående kommando (samma som!-1)!string Kör det senast förekommande kommandot som börjar med string!?string[?] Kör det senast förekommande kommandot som innehåller string 21
22 Inbyggda kommandon source filnamn Kör varje rad i filen filnamn cd, pwd, mkdir (se stone!) echo Skriv ut värden export [name] Se till att variabeln name finns tillgänglig utanför nuvarande miljö fc [first] [last] Kopiera kommando [first, last] från historiken till din editor. När du avslutar körs de kommandona pushd [dir] Gå till mapp dir men spara nuvarande position, popd går tillbaka 22
23
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Grundläggande satser och uttryck Eric Elfving Institutionen för datavetenskap 5 augusti 2014 Översikt Uttryck Litteraler Operatorer Satser Villkor Upprepning Teckenhantering
Övningar till UNIX/Linux Grundkurs och förslag till LÖSNING
Övningar till UNIX/Linux Grundkurs och förslag till LÖSNING 1. Träna på att logga in och ut. 2. Mata ln sleep 60. Mata in kommandot date direkt. Tryck på avbrottstangenten, (CTRL-C). Prova kommandot date
Emacs. Eric Elfving Institutionen för datavetenskap (IDA) 22 augusti 2016
Emacs Eric Elfving Institutionen för datavetenskap (IDA) 22 augusti 2016 Historia 2/21 Utvecklas konstant, från 70-talet Är en generellt texteditor (INTE ordbehandlare) som fokuserar på texten, inte utseendet
Emacs. Eric Elfving Institutionen för Datavetenskap (IDA)
Emacs Eric Elfving Institutionen för Datavetenskap (IDA) Emacs Utveckas konstant, från 70-talet Är en texteditor (inte ordbehandlare) och fokuserar på texten, inte utseendet. Ingår i GNU-projektet Har
MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...
Allt du behöver veta om MATLAB: Industristandard för numeriska beräkningar och simulationer. Används som ett steg i utvecklingen (rapid prototyping) Har ett syntax Ett teleskopord för «matrix laboratory»
Lab 7, 48 steg till ett bättre liv i Unix-labbet
Lab 7, 48 steg till ett bättre liv i Unix-labbet Urban Liljedahl 13 december 2002 Instruktioner Mål Krav Utveckla förmågan att söka kunskap med hjälp litteratur och andra källor. Utveckla förmågan att
Olika shell. Skalprogrammering. Pipor och omdirigering av strömmar
Olika shell Csh-kompatibla csh - C shell tcsh Standardshellet för terminaler på institutionen Bourne-kompatibla sh - Bourne shell. Används ofta för script bash - Bourne again shell. Man kan byta till detta
C++ - En introduktion
C++ - En introduktion De imperativa grunderna för dig som kan programmera Eric Elfving Institutionen för datavetenskap 1 / 72 Översikt 1 Grunderna 2 Uttryck och satser 3 Funktioner 4 Poster 1 Grunderna
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner
Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt
Föreläsning 2 Programmeringsteknik och C DD1316 Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C Python introduktion Utskrift Inläsning Variabler Datatyp Aritmetiska operatorer Omvandling
Övningar till UNIX/Linux Grundkurs och förslag till LÖSNING
Övningar till UNIX/Linux Grundkurs och förslag till LÖSNING 1. Träna på att logga in och ut. 2. Mata in sleep 60. Mata in kommandot date direkt. Tryck på avbrottstangenten, (CTRL-C). Prova kommandot date
Uttryck, satser och strömhantering
Linköpings Universitet Institutionen för datavetenskap (IDA) UPP-gruppen 2018-09-06 Mål Uttryck, satser och strömhantering I denna laboration ska du lära dig Formaterad inläsning och utskrift Vanliga repetitions-
kommando -fl argument
Grundläggande kommandostruktur kommando -fl argument Kommandot kommando är ett litet linuxprogram som gör något. Flaggorna fl modifierar kommandot Argumentet argument kan vara inget, ett eller flera (beroende
Grundläggande datalogi - Övning 1
Grundläggande datalogi - Övning 1 Björn Terelius October 30, 2008 Python är ett tolkat språk som kan köras interaktivt. tcs-ray:~/grudat08>python >>> 11+3*4 23 >>> a = 15 >>> b=a >>> print "a =", a, "b
Uppgift 1 (grundläggande konstruktioner)
Uppgift 1 (grundläggande konstruktioner) a) Skriv ett program som låter användaren mata in 7 heltal och som gör utskrifter enligt nedanstående körexempel. Mata in 7 heltal: 1 0 0 3 1 1 1 Tal nr 2 var en
U N I X G R U N D K U R S Ö V N I N G S U P P G I F T E R
U N I X G R U N D K U R S Ö V N I N G S U P P G I F T E R 1 Kapitel 1 1. Kommandon. - Lista alla användare på systemet och i LAN. _ - Vad visar kommandona? - cal - who am I - man cal - ls - pwd - cd -
Programmeringsteknik med C och Matlab
Programmeringsteknik med C och Matlab Kapitel 2: C-programmeringens grunder Henrik Björklund Umeå universitet Björklund (UmU) Programmeringsteknik 1 / 32 Mer organisatoriskt Imorgon: Datorintro i lab Logga
TDDC76 - Programmering och Datastrukturer
TDDC76 - Programmering och Datastrukturer C++ - en introduktion Eric Elfving Institutionen för datavetenskap 1 / 72 Översikt 1 Grunderna 2 Uttryck och satser 3 Funktioner 4 Poster 1 Grunderna Ett första
Introduktionslaboration
TDDC76 Laborationshandledning 1 TDDC76 Programmering och datastrukturer Introduktionslaboration Denna introduktionslaboration introducerar programmeringsspråket C++, hur du skriver enkla C++-program samt
Filers innehåll. Grundläggande databehandling. Representation av text. pffb = påhittat filformat för bilder
Filers innehåll Data av olika slag lagras i filer. file = pärm, mapp, arkiv, akt,... Grundläggande databehandling Filer och skal Per Starbäck 2005-09-12 / Föreläsning 2 texter ljud bilder databaser program...
Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek
De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000
Datorer och datoranvändning Föreläsningar 2014/15. Föreläsning 1 Unix. Operativsystem. Unix
Datorer och datoranvändning Föreläsningar 2014/15 Per Holm Per.Holm@cs.lth.se Unix 2 (lab 1) Lågnivåprogrammering 23 (lab 2) Datorns hårdvara 45 L A TEX 69 (lab 3) Internet 98 (lab 4) Operativsystem 117
Introduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion
Introduktion till programmering Föreläsning 4: Villkor och rekursion 1 1 Några inbyggda funktioner (med resultat!) Konverterar mellan de grundläggande typerna: >>> int("32") 32 >>> int(3.999) 3 >>> float(32)
Strängar. Strängar (forts.)
Strängar En sträng i C är helt enkelt en array av char: char namn[20]; För att få strängar att bete sig som om de vore av dynamisk längd markeras strängens slut med null-tecknet \0 : J o z e f S w i a
Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6
Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner
Klassdeklaration. Metoddeklaration. Parameteröverföring
Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar
TDP002 Imperativ programmering
TDP002 Imperativ programmering Introduktion till kursen och python Eric Elfving Institutionen för datavetenskap (IDA) Översikt Programmering En introduktion Python Köra och skriva program Python grunderna
komplex av nödvändiga, understödjande program som kallas Utanpå OS existerar ett - eller flera olika - slags skal som
- 1 - - 2 - Datorkörning/datoranvändning handlar i princip bara om att exekvera program för olika ändamål, explicit eller implicit - explicit: starta uttryckligen ett program med ett visst namn si eller
Tilpro Övning 1. Per-Anders Staav (föredrar att kallas Pa) Kan nås via epost: (fast de flesta frågor besvaras nog bäst av Alexander)
Tilpro Övning 1 Per-Anders Staav (föredrar att kallas Pa) Kan nås via epost: pasta@kth.se (fast de flesta frågor besvaras nog bäst av Alexander) På programmet idag: Unix (Solaris) Grunderna i Python programmering
Variabler och konstanter
Variabler och konstanter Deklareras automatisk när man stoppar in data i dem. X = 7 Y = A Z = Kalle Definieras av att de har: ett namn (X) en datatyp (Integer) ett värde (t.ex. 7) Lagras i datorns minne!
String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning
Dagens Agenda String [] argv String [] argv Arrayer och Strängar fortsättning Booleska operatorer if, for, while satser Introduktion till algoritmer public static void main(string [] argv) argv är variabelnamnet
Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.
Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E Föreläsning 4: Villkor och rekursion Konverterar mellan de grundläggande typerna: >>> int("") >>> int(.999) >>> float().0
awk, sed och grep ed kommandon grep Standard unix editor tidig 70-tal program < 8Kbyte awk döpt efter Aho Weinberger Kernighan (1977)
C&UNIX awk, sed och grep 1 C&UNIX ed 2 ed Standard unix editor awk, sed och grep tidig 70-tal program < 8Kbyte awk döpt efter Aho Weinberger Kernighan (1977) terminal 10 tecken s 1 sed en stream editor
Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser
Introduktion till programmering Föreläsning 2: Variabler, uttryck och satser 1 1 Värden De grundläggande saker som en dator manipulerar resultaten av beräkningar kallas värden Värden vi stött på: 2 och
Tilpro Övning Per-Anders Staav (vikarierande) (föredrar att kallas Pa) Kan nås via epost:
Tilpro Övning 1 2006 Per-Anders Staav (vikarierande) (föredrar att kallas Pa) Kan nås via epost: pasta@kth.se På programmet idag: Unix (Solaris) Grunderna i Python programmering Allmänt om datorkonton
STRÄNGAR DATATYPEN. Om du vill baka in variabler eller escape-tecken måste du använda dubbla citattecken. strängar
STRÄNGAR En av de mest avancerade av de normala datatyperna är. Här skall vi grundläggande gå igenom hur den datatypen fungerar och vidare flertalet funktioner som hör till datatypen. Låt oss kasta oss
Lathund för UNIX och Emacs
Lathund för UNIX och Emacs Lathund för UNIX och Emacs Producerad av Ingemar Axelsson och Peter Johansson hösten 2002 Senast reviderad av Peter Dalenius augusti 2010 Institutionen för datavetenskap, Linköpings
Föreläsning 1 Unix. Datorer och datoranvändning Föreläsningar 2018/19. Operativsystem. Unix
Datorer och datoranvändning Föreläsningar 2018/19 Per Holm Roger Henriksson roger.henriksson@cs.lth.se Förberedelse inför laboration 1. Operativsystem, Unix historik Filer och kataloger Kommandon Filskydd
Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk
Föreläsning 2 steknik DD1310 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer funktioner betyder att instruera en dator Ett program
awk, sed och grep awk döpt efter Aho Weinberger Kernighan (1977) sed en stream editor grep sed g/re/p bygger i viss mån på ed line editor
C&UNIX awk, sed och grep 1 awk, sed och grep awk döpt efter Aho Weinberger Kernighan (1977) sed en stream editor grep sed g/re/p bygger i viss mån på ed line editor C&UNIX ed 2 ed Standard unix editor
Exempel: Exempel: Exempel: Exempel: $djur=array("ko","katt","älg"); foreach ($djur as $d) { echo $d. " "; } Resultat. ko katt älg
Loopar och upprepning Vill man upprepa kod flera gånger så istället för att skriva en massa rader så kan man lägga koden i ett kodblock som man sedan loopar. Det finns ett par olika typer av loopar, FORloop,
Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?
Föreläsning 10 Datalogi 1 DA2001 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer på skärmen print( Hej ) print( Hur är det?
Subversion. Laboration. Höstterminen 2008 r81. Ronny Kuylenstierna
Subversion Laboration Höstterminen 2008 Ronny Kuylenstierna @ida.liu.se svn-labb 2 [...] Subversion can be used to manage changes to any sort of information images, music, databases, documentation, and
Guido van Robot och olika UNIX-kommandon
Guido van Robot och olika UNIX-kommandon Till denna session är det tänkt att ni ska ha arbetat en del med både UNIX-kommandon och börjat med Guido van Robot. Vi ska nu studera dessa båda saker med hjälp
Tips och tricks. Några bra tips. Lägg till sökvägar
17 Tips och tricks Det är aldrig så bra att det inte kan bli bättre och det finns alltid saker som har en viss benägenhet att gå fel I det här kapitlet kommer vi att ge dig några tips på hur du kan förbättra
i LabVIEW. Några programmeringstekniska grundbegrepp
Institutionen för elektroteknik Några programmeringstekniska grundbegrepp 1999-02-16 Inledning Inom datorprogrammering förekommer ett antal grundbegrepp som är i stort sett likadana oberoende om vi talar
Tentaupplägg denna gång
Några tips på vägen kanske kan vara bra. Tentaupplägg denna gång TIPS 1: Läs igenom ALLA uppgifterna och välj den du känner att det är den lättaste först. Det kan gärna ta 10-20 minuter. Försök skriva
Exempel på ett litet Ada-program
Exempel på ett litet Ada-program -- En kommentar som beskriver något. with Ada.Text_IO; procedure Mini is -- Deklarationer. K : constant Integer := 5; X, Y : Integer; -- Körbar kod. Ada.Text_IO.Put( Utskrift
Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??
Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? C är ett språk på relativt låg nivå vilket gör det möjligt att konstruera effektiva kompilatorer, samt att komma nära
Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk
Föreläsning 2 steknik och C DD1316 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program
TDP002 - Imperativ programmering
. TDP002 - Imperativ programmering Introduktion till kursen och Python Eric Elfving Institutionen för datavetenskap 14 augusti 2015 Översikt 2/29 Programmering - en översikt Python - Köra och skriva program
Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program
Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i
Användarhandledning Version 1.2
Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Pekare och Listor Eric Elfving Institutionen för datavetenskap 31 oktober 2014 Översikt 2/41 Internminne Pekare Dynamiska datastrukturer (Enkellänkade) listor Arbeta
Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk
Föreläsning 2 steknik DD1310 Python introduktion Variabler Datatyper Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program är
Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
Sätt att skriva ut binärträd
Tilpro Övning 3 På programmet idag: Genomgång av Hemtalet samt rättning Begreppet Stabil sortering Hur man kodar olika sorteringsvilkor Inkapsling av data Länkade listor Användning av stackar och köer
Textbearbetning i skalet och man-sidor
Kapitel 5 Textbearbetning i skalet och man-sidor Vi har redan använt skalkommandon för att göra saker textfiler. Här kommer gomgång av sådana kommandon som vi redan använt, några nya varianter, samt ett
Introduktion till MATLAB
29 augusti 2017 Introduktion till MATLAB 1 Inledning MATLAB är ett interaktivt program för numeriska beräkningar med matriser. Med enkla kommandon kan man till exempel utföra matrismultiplikation, beräkna
Introduktion till programmering SMD180. Föreläsning 3: Funktioner
Introduktion till programmering Föreläsning 3: Funktioner 1 1 Mer matematik Vi har sett matematiska uttryck med variabler, värden och operatorer, ex: 17+n pi/2 hours*60+minutes Kan man även skriva uttryck
Föreläsning 3 Programmeringsteknik och C DD1316. Innehåll i listor. Uppdateringsoperatorer. +,* och listor. Listor. Indexering
Föreläsning 3 Programmeringsteknik och C DD1316 Innehåll i listor En lista kan innehålla element av olika typer: [ hej, 151, 10.59] uppdateringsoperatorer listor tupler strängar for-slingor importera moduler
Terminal vad det är vad man kan göra med den
Terminal vad det är vad man kan göra med den Touch Användbarhet Batchkörning WIMP CLI (Command Line Interface) sh ksh tcsh bash zsh (Windows, Icon, Menu, Pointer) Elektronrör 1940 1950 1960 1970 1980 1990
1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet
1 Texthantering I detta avsnitt tas det upp två sätt att arbeta med text i C++ program. Det första sättet som behandlas är hanteringen av textfält. Texter i C++ består utav en serie med enstaka tecken
For att fa information om kommandon eller program sa nns det manualsidor. Dessa
Lulea Tekniska Universitet Malin Flodin 12 Maj 1997 SMD084 1 Manualsidor For att fa information om kommandon eller program sa nns det manualsidor. Dessa kan man studera genom att anvanda programmet xman
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Underprogram - Funktioner Eric Elfving Institutionen för datavetenskap 18 september 2014 Översikt 2/22 Återblick till satsblocken Funktioner - Namngivna satsblock
Föreläsning 2 Programmeringsteknik och C DD1316
Föreläsning 2 Programmeringsteknik och C DD1316 Föreläsning 2 Programmeringsteknik och C Datatyp Aritmetiska operatorer Omvandling av typer Reserverade ord Mikael Djurfeldt Logiska operatorer
Vad har vi lärt oss så här långt Vad är en sträng? Strängkonstanter. Att skriva ut och läsa in strängar. Att arbeta med strängar.
Vad har vi lärt oss så här långt Vad är en sträng Strängkonstanter. Att skriva ut och läsa in strängar. Att arbeta med strängar. Matriser av strängar. Sortering av strängar. Vad har vi lärt oss i dag Literals
När man vill definiera en matris i MATLAB kan man skriva på flera olika sätt.
"!$#"%'&)(*,&.-0/ 177 Syftet med denna övning är att ge en introduktion till hur man arbetar med programsystemet MATLAB så att du kan använda det i andra kurser. Det blir således inga matematiska djupdykningar,
Översikt. Texthantering med bl.a. kommandona cat, less och grep Omdirigering och piping Gnuplot. Linux 2 2 / 12
Översikt Texthantering med bl.a. kommandona cat, less och grep Omdirigering och piping Gnuplot 2 / 12 Texthantering Kommandona cat och less Vi har ett par textfiler i vår hemkatalog som heter liten_text.txt
Programmering i C, 7,5 hp
Programmering i C, 7,5 hp Föreläsning 4 VÄLKOMNA! 31 switch-satsen Antag att vi har en heltalsvariabel a som skall styra programflödet Antag vidare att a kan anta tex 5 olika värden 1,2,3,4,5 printf( Mata
TDP002 - Imperativ programmering
TDP002 - Imperativ programmering Introduktion till kursen och Python Eric Elfving Institutionen för datavetenskap 1 Programmering - en översikt 2 Python Inbyggda typer Satser och uttryck 1 Programmering
Beräkningsvetenskap föreläsning 2
Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa
Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:
TANA81: Beräkningar med Matlab - Variabler och Matriser - Logiska uttryck och Villkor - Repetitionssatser - Grafik - Funktioner Variabler I Matlab skapas en variabel genom att man anger dess namn och ger
732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Exempelduggan. Luffarschack. Koda spel
732G11 Linköpings universitet 2011-02-15 1 2 3 4 Extrapass Extrapass håller på att bokas. Blir 3-4 st. och öppet för alla. Mer info på kursmailen när bokningen är klar. i Java En funktion i Java... public
F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander
F5 Selektion och iteration ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Boolska uttryck Boolska uttryck använder sig av jämförelseoperatorer < > = ==!= Resultatets datatyp är boolean
Övningsuppgifter kapitel 8
Inst. för Systemteknik Introduktion till programmering (SMD 180), 5 p Övningsuppgifter kapitel 8 1. Listor är en viktig datatyp i Python. Hur definierar kursboken lista? Vad kallas de värden som tillsammans
Innehåll. Föreläsning 12. Binärt sökträd. Binära sökträd. Flervägs sökträd. Balanserade binära sökträd. Sökträd Sökning. Sökning och Sökträd
Innehåll Föreläsning 12 Sökträd Sökning Sökning och Sökträd 383 384 Binärt sökträd Används för sökning i linjära samlingar av dataobjekt, specifikt för att konstruera tabeller och lexikon. Organisation:
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Strömmar, externa filer och kommandoradsargument Eric Elfving Institutionen för datavetenskap 7 oktober 2015 Översikt 2/32 Strömmar Kommandoradsargument Jämförelseoperatorer
Översikt över Visual Basic
Översikt över Visual Basic Om denna översikt Denna översikt ger en kort introduktion till de viktigaste delarna i programspråket Visual Basic 6.0. På alla ställen där det beskrivs hur man skriver kod gäller
Introduktion till programmering SMD180. Föreläsning 7: Strängar
Introduktion till programmering Föreläsning 7: Strängar 1 1 En sammansatt datatyp En sträng är ett enhetligt värde, som kan lagras i variabler och fungera som operand eller funktionsargument en datastruktur
Kompilera och exekvera Javakod
Kompilera och exekvera Javakod Förberedelser För att kunna göra dessa övningar måste du ha installerat Java Development Kit, JDK, som bland annat innehåller Java kompilatorn, javac. Hur du installerar
Xemacs, första hjälpen!
Högskolan Dalarna Objektorienterad programmering, 5p 1 (5) Datateknik 19981018 HansEdy Mårtensson Xemacs, första hjälpen! Xemacs startas enklast på följande sätt: xemacs filnamn filnamn är benämningen
Kommunicerande system
itop Läsanvisning: kap 2 --- Att använda klasser! Meddelanden och metoder! Informationsdöljande och inkapsling! Skapa och använda färdiga objekt!! Primitiva variabler kontra objektvariabler! 3 tester på
732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning
Varför? 732G11 Linköpings universitet 2011-02-08 Varför? 1 2 3 Varför? 4 5 Medelvärde av 5000 tal Varför? while-loopen int nrofints = 5000; int [] integers = new int [ nrofints ]; int pos = 0; while (
PROGRAMMERING-Java Omtentamina
PROGRAMMERING-Java Omtentamina Nicolina Månsson 2007-08 13 Tentamensinstruktioner Poängsättning Hela tentamen omfattar 41 poäng. Poäng för varje uppgift står angivet inom parentes före varje uppgift. -
Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska
Matlab-föreläsning 3 (4), 17 september, 2015 Innehåll Sekvenser (från förra föreläsningen) Upprepning med for-slingor och while-slingor Villkorssatser med if - then -else - Logik Sekvenser - repetion från
Språket Python - Del 2 Grundkurs i programmering med Python
Hösten 2009 Dagens lektion Funktioner Filhantering Felhantering 2 Funktioner 3 FUNKTIONER Att dela upp program Att dela upp program i mindre delar, funktioner är ett viktigt koncept i programmering. Viktigt
Kort-kort om utdelade användarkonton och datormiljön på NADA
Kort-kort om utdelade användarkonton och datormiljön på NADA UNIX-konto, användaridentitet Namn Du har fått ett konto med ett användarnamn bestående av prefixet ip99_ och ytterligare tre bokstäver. Dessa
1.#Bakgrund# En#kort#introduk+on#+ll#Unix# Klassiskt#första#bemötande# Håkan#Jonsson# Ins+tu+onen#för#systemteknik# Luleå#tekniska#universitet#
1.Bakgrund Enkortintroduk+on+llUnix HåkanJonsson Ins+tu+onenförsystemteknik Luleåtekniskauniversitet Unix(uMalat['ju:niks])äridageM samlingsnamnförengruppopera&vsystem DetförstaUnixsystemetutvecklades
Uppgift 1 (Sorterade heltal som är OK)
2013-03-12.kl.14-19 Uppgift 1 (Sorterade heltal som är OK) Ibland råkar man ut för att man måste se till att man inte får dubletter i sina inmatningar. Denna uppgift baserar sig på detta, men dessutom
Introduktionslaboration
LINKÖPINGS TEKNISKA HÖGSKOLA Institutionen för datavetenskap Avdelningen för programvara och system (SaS) Tommy Olsson 2006-08-31 TDIU06 Programmering g.k Introduktionslaboration Ht1, 2006 Detta häfte
[] Arrayer = Indexerad variabel
[] Arrayer = Indexerad variabel Lagra många värden i en variabel Jmfr inom matematiken, variabler x 0, x 1, x 2, I detta dokument tas upp hur man skapar och hanterar sådana variabler i java. Dessa kallas
Uppgift 1 (Oläsliga krypterade meddelanden)
Uppgift 1 (Oläsliga krypterade meddelanden) Ofta vill man kryptera text för att inte andra skall se vad man skrivit. I den givna filen KRYPTERAD_TEXT.TXT finns en krypterad text som kan vara av intresse
Omkoppling av in- och utmatning. In- och utmatning i Unix. Kommando exempel, ls, pipe forts. Kommando exempel, ls, pipe
In- och utmatning i Unix Program i Unix skriver och läser till och från filer. En fil betyder här en vanlig fil med text eller binära data, ett tangentbord, en skärm, ett annat program etc. Innan ett program
729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer
729G04 Programmering och diskret matematik Python 2: Villkorssatser, sanningsvärden och logiska operatorer Föreläsningsöversikt Vad händer när vi kör vår pythonkod? Programmerare Villkorssatser Jämförelser
Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut
F5: Filhantering in- och utmatning (kap. 2 och 8) 1 Utskrift på skärm, inläsning från tangentbord (kap. 2) Spara och hämta variabler med save och load (kap. 2) Kommandot textread Mer avancerad filhantering:
SF1546, Numeriska Metoder för O1 Lab0 - frivillig. (dvs uppgifterna behöver inte redovisas!)
SF1546, Numeriska Metoder för O1 Lab0 - frivillig. (dvs uppgifterna behöver inte redovisas!) Denna labb är tänkt att öva datorhantering och öva inledande Matlab. Eftersom förkunskaperna varierar finns
Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4:
(22 januari 2016 F2.1 ) Föreläsning 2 Täcker material från lektion 1, 2, 3 och 4: Datatyper Aritmetik Tecken och strängar Klasser, Objekt Metoder Villkor, villkorssatser och iterationer main-metoden Kodstandard
Introduktion till PHP
PHP - Grund Copyright 2016 Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Introduktion till PHP PHP = PHP: Hypertext Preprocessor PHP är ett programmeringsspråk. PHP är ett skriptspråk som körs
C++ - En introduktion
C++ - En introduktion De imperativa grunderna för dig som kan programmera Eric Elfving Institutionen för datavetenskap 1 / 77 Översikt 1 Grunderna 2 Uttryck och satser 3 Funktioner 4 Poster 1 Grunderna