יסודות מערכות פתוחות ג ' בארה אחמד המכללה האקדמית נתניה The Awk Utility.

Slides:



Advertisements
Similar presentations
Files 1 יום חמישי 16 אפריל 2015 יום חמישי 16 אפריל 2015 יום חמישי 16 אפריל 2015 יום חמישי 16 אפריל 2015 יום חמישי 16 אפריל 2015 יום חמישי 16 אפריל 2015.
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
Algorithm & Flow Charts Decision Making and Looping Presented By Manesh T Course:1090 CS.
Adjectives - Comparisons
תרשימי DFD ד"ר אבי רוזנפלד. Kendall & Kendall © 2005 Pearson Prentice Hall 7-2 הסימנים הבסיסיים.
הדרכה בשימוש בקטלוג הספרייה מפגש מס ' 2 תשס " ח. מטרת ההדרכה  איתור חומר מתוך הסילבוס  איתור חומר בנושא מבוקש.
דוד שוורץ, עידן זק, נטע צור וחיה כהן. הפונקציונאליות : המשתמש יבחר קובץ שעליו הוא רוצה לבצע את האנליזה, וילחץ עליו עם כפתור ימני בעכבר. יפתח תפריט ובו.
חזרה על מושגי יסוד ביסודות התכנות בשפת ג'אווה שיעור 1.
תכנות תרגול 6 שבוע : חישוב e זוהי הנוסחא לחישוב e נראה כיצד לתרגם אותה לפונקציה n n.
תכנות תרגול 4 שבוע : לולאות while לולאות while while (condition) { loop body } במקרה של קיום התנאי מתבצע גוף הלולאה ברגע שהתנאי לא מתקיים נצא.
11 Introduction to Programming in C תרגול
מבוא למדעי המחשב תרגול 8 - מחרוזות שעת קבלה : יום שני 11:00-12:00 דוא " ל :
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
מבוא למדעי המחשב תרגול 4 שעת קבלה : יום שני 11:00-12:00 דוא " ל :
תרגול חזרה. מבנה האובייקט תאר את מבנה האובייקט כולל מבנה טבלאות הפונקציות הוירטואליות עבור התכנית הבאה struct A { int x; virtual void a() {}; }; struct.
1 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
חלון הפקודות מיועד לבצע פעולה אחת בכל פעם. כיצד אפשר לבצע רשימת פקודות או אפליקציות מורכבות ?
1 מבוא למדעי המחשב מבנה של תכנית. 2 מבנה של תכנית – חלוקה לקבצים  תכנית בשפת C הינה אוסף של הגדרות של:  משתנים (חיצוניים)  פונקציות  ניתן לפרוש תכנית.
תכנות תרגול 6 שבוע : תרגיל שורש של מספר מחושב לפי הסדרה הבאה : root 0 = 1 root n = root n-1 + a / root n-1 2 כאשר האיבר ה n של הסדרה הוא קירוב.
דוד שוורץ, עידן זק, נטע צור וחיה כהן. הפונקציונאליות:  המשתמש בוחר קובץ שעליו הוא רוצה לבצע את האנליזה, ולוחץ עליו עם כפתור ימני בעכבר.  נפתח תפריט.
ברוכים הבאים למת"ם! אדמיניסטרציה מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. אתר הבית:
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site : T.A. :Emilia Katz.
תכנות תרגול 6 שבוע : הגדרת פונקציות return-value-type function-name(parameter1, parameter2, …) הגדרת סוג הערכים שהפונקציה מחזירה שם הפונקציהרשימת.
A. Frank File Organization Building on the Stream Model Thanks to Adi Gutman and Noa Cohen.
ברוכים הבאים למת"ם! אדמיניסטרציה מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. אתר הבית:
תכנות תרגול 3 שבוע : לולאות while לולאות while while (condition) { loop body } במקרה של קיום התנאי מתבצע גוף הלולאה ברגע שהתנאי לא מתקיים נצא.
1 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
מבוא כללי למדעי המחשב תרגול 3. לולאות while לולאות while while (condition) { loop body } במקרה של קיום התנאי מתבצע גוף הלולאה ברגע שהתנאי לא מתקיים נצא.
Scripting Languages and C-Shell. What is a scripting language ? Script is a sequence of commands written as plain text and run by an interpreter (shell).
תכנות תרגול 5 שבוע : הגדרת פונקציות return-value-type function-name(parameter1, parameter2, …) הגדרת סוג הערכים שהפונקציה מחזירה שם הפונקציהרשימת.
עקרון ההכלה וההדחה.
יחס סדר חלקי.
מבוא למדעי המחשב תרגול 3 שעת קבלה : יום שני 11:00-12:00 דוא " ל :
תחשיב היחסים (הפרדיקטים)
A. Frank File Organization Introduction to Pile File.
Awk challanges Prof. Andrzej (AJ) Bieszczad Phone: awk Challenges Find out what the following awk scripts do: END.
A. Frank File Organization Hardware Size Parameters.
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
יום עיון –פרויקט חקר מדעי במסגרת תחרות שישים שנות תעשייה כימית בישראל ד"ר מירי קסנר ברוכים הבאים 1 ביולי 2008 מכון ויצמן למדע, רחובות.
Unix Shell Scripts. What are scripts ? Text files in certain format that are run by another program Examples: –Perl –Javascript –Shell scripts (we learn.
CS 403: Programming Languages Fall 2004 Department of Computer Science University of Alabama Joel Jones.
Awk Dr. Tran, Van Hoai Faculty of Computer Science and Engineering HCMC Uni. of Technology
1 המרכז להוראת המדעים © האוניברסיטה העברית בירושלים עוברים לג ' אווה.
1 מבוא למחשב שפת C תרגילי חזרה. 2 תרגיל 1 : מחשבון קלט : תרגיל חשבוני המורכב ממספרים שלמים עם פעולות חשבוניות ביניהם. התרגיל מסתיים ב =. אפשריים רווחים.
16-Dec-15Advanced Programming Spring 2002 sed and awk Henning Schulzrinne Dept. of Computer Science Columbia University.
תכנות מכוון עצמים ושפת ++C וויסאם חלילי. TODAY TOPICS: 1. Function Overloading & Default Parameters 2. Arguments By Reference 3. Multiple #include’s 4.
Alon Efrat Computer Science Department University of Arizona Unix Tools.
CISC 1480/KRF Copyright © 1999 by Kenneth R. Frazer 1 AWK q A programming language for handling common data manipulation tasks with only a few lines of.
1 Lecture 10 Introduction to AWK COP 3344 Introduction to UNIX.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 6. מפעל השעווה – לולאות  עד עכשיו  טיפלנו בייצור נרות מסוג אחד, במחיר אחיד  למדנו להתמודד עם טיפול במקרים שונים.
CSCI 330 UNIX and Network Programming Unit IX: awk II.
Computing on TSCC Make a folder for the class and move into it –mkdir –p /oasis/tscc/scratch/username/biom262_harismendy –cd /oasis/tscc/scratch/username/biom262_harismendy.
UNIX commands Head More (press Q to exit) Cat – Example cat file – Example cat file1 file2 Grep – Grep –v ‘expression’ – Grep –A 1 ‘expression’ – Grep.
שיתוף PDT בין חוטים PDT Thread A Process Descriptor File Object 1 File Object 2 File 1 File 2 pthread_create Thread B Process Descriptor ה PDT משותף לכל.
Part I: n Q1: n $ file * | grep “ascii text” | wc -l n Q2: n $ a.out | tee logfile n Q3: $touch file.`date +’%H%M%S’` n.
Algorithm & Flow Charts Decision Making and Looping
Презентацию подготовила Хайруллина Ч.А. Муслюмовская гимназия Подготовка к части С ЕГЭ.
1 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
מספרים אקראיים ניתן לייצר מספרים אקראיים ע"י הפונקציה int rand(void);
Lecture 14 Programming with awk II
Programming Arrays.
IF-ELSE כתוב תוכנית הקולטת שלושה מספרים ומדפיסה אותם בסדר עולה(ממיינת אותם)  קלט:7,2,4 ,פלט:2,4,7 .
קבצי script ניהול תהליכים ב-UNIX
HI !.
John Carelli, Instructor Kutztown University
Computer Programming Fall 2012 תרגול
היכרות עם Java אליהו חלסצ'י תכנות מתקדם תרגול מספר 1
עבודה עם נתונים באמצעות ADO.NET
מודל חישוב בסיסי שיעור 1.
שאלות מבחינות קודמות יואב ציבין.
Presentation transcript:

יסודות מערכות פתוחות ג ' בארה אחמד המכללה האקדמית נתניה The Awk Utility

The Awk Utility – example1 {print $0} p1 Yosi Ron Rami Dana f1 > awk -f p1 f1 הפעלה Yosi Ron Rami Dana פלט

The Awk Utility – example2 {print $1,$3} p1 Yosi Ron Rami Dana f1 > awk -f p1 f1 הפעלה Yosi 70 Ron 90 Rami 76 Dana 37 פלט

The Awk Utility – example3 {print FNR,NF,$0} p1 Yosi Ron Rami Dana f1 > awk -f p1 f1 הפעלה 1 6 Yosi Ron Rami Dana פלט

The Awk Utility – example4 {print NR,FNR,NF,$0} p1 Yosi Ron Rami Dana f1 > awk -f p1 f1 f2 הפעלה Yosi Ron Rami Dana Udi Unix data_structure Ahmad Java Unix c c# Gershon c# Asp.Net פלט Udi Unix, data_structure Ahmad Java, Unix, c, c# Gershon c#, Asp.Net f2

The Awk Utility – example5 BEGIN {“Hi”} {print NR,FNR,NF,$0} END {“Bye”} p1 Yosi Ron Rami Dana f1 > awk -f p1 f1 f2 הפעלה Hi Yosi Ron Rami Dana Udi Unix data_structure Ahmad Java Unix c c# Gershon c# Asp.Net Bye פלט Udi Unix, data_structure Ahmad Java, Unix, c, c# Gershon c#, Asp.Net f2

The Awk Utility – example6 p1 Number of data files is 2 file_No file file NR FNR NF $0 1 f1 f Yosi f1 f Ron f1 f Rami f1 f Dana f2 f Udi Unix, data_structure 2 f2 f Ahmad Java, Unix, c, c# 2 f2 f Gershon c#, Asp.Net bye פלט Udi Unix, data_structure Ahmad Java, Unix, c, c# Gershon c#, Asp.Net f2 BEGIN {print "Number of data files is",ARGC-1 print "file_No\tfile\tfile\tNR\tFNR\tNF\t$0" } { print ARGIND,"\t",ARGV[ARGIND],"\t",FILENAME,"\t",NR,"\t",FNR,"\t",NF,"\t",$0} END { print "bye“ } Yosi Ron Rami Dana f1 > awk -f p1 f1 f2 הפעלה

The Awk Utility – example7 {print "The length of ",$1,"is",length($1)} p1 The length of Yosi is 4 The length of Ron is 3 The length of Rami is 4 The length of Dana is 4 פלט Yosi Ron Rami Dana f1

The Awk Utility – example8 NR==2 {print $0} p1 Ron פלט Yosi Ron Rami Dana f1

The Awk Utility – example9 $3>70 {print $0} p1 Ron Rami פלט Yosi Ron Rami Dana f1

The Awk Utility – example10 !($3>70) {print $0} p1 Yosi Dana פלט Yosi Ron Rami Dana f1

The Awk Utility – example11 NR==2 || !($3>70) {print $0} p1 Yosi Ron Dana פלט Yosi Ron Rami Dana f1

The Awk Utility – example12 NR==1, NF==7 {print $0} p1 Yosi Ron Rami פלט Yosi Ron Rami Dana f1

The Awk Utility – example13 /Aviv/ {print $0} p1 Ron Tel-Aviv Aviv Haifa פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example14 $1==“Aviv” {print $0} p1 Aviv Haifa פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example15 $3==“Aviv” {print $0} p1 פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example16 BEGIN {max=0 ; Name=""} NF-2>max {max=NF-2 ; Name=$1} END {print Name,”with”,max,”grades”} p1 Aviv with 6 grades פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example17 BEGIN {n=0} /Aviv/ {n=n+1} END {print "Aviv occurs",n,"times."} p1 Aviv occurs 2 times. פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example18 END {print $0} p1 Dana Netanya פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example19 { sum=0; for (i=4;i<=NF;i++) sum=sum+$i; print $1,"Average is",sum/(NF-3); } p1 Yosi Average is 53 Ron Average is Aviv Average is 58 Dana Average is 72 פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example20 BEGIN {maxAvg=0; Name=""} { sum=0; for (i=4;i<=NF;i++) sum=sum+$i; print $1,"Average is",sum/(NF-3); if (maxAvg < sum/(NF-3) ) { maxAvg=sum/(NF-3); Name=$1; } END {print Name,"with", maxAvg} p1 Yosi Average is 53 Ron Average is Aviv Average is 58 Dana Average is 72 Ron with פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example21 {Line[NR] = $0 } END {var = NR; while (var > 0) { print line[var] var -- } p1 Dana Netanya Aviv Haifa Ron Tel-Aviv Yosi Ranana פלט Yosi Ranana Ron Tel-Aviv Aviv Haifa Dana Netanya f1

The Awk Utility – example22 (05/2/a) BEGIN {max=0} NF > max { max=NF; sum=0; for (k=1;k<=NF;k++) sum=sum+$k; } END {print sum} p1 82 פלט f1

The Awk Utility – example23 (2006 moed a) כתוב/כתבי תוכנית ב- awk בשם P2 שמקבלת פרמטר אחד שהינו שם קובץ (בהמשך נקרא לו קובץ 1). הנח/י שהתוכן של קובץ 1 הוא מטריצה של מספרים. המספרים בכל שורה בקובץ 1 מופרדים ע"י תו רווח אחד או יותר. התוכנית תדפיס Yes אם מתקיים לפחות אחד משני התנאים הבאים: (1) סכום המספרים בכל שורה בקובץ הינו קבוע, (2) סכום המספרים בכל עמודה בקובץ הינו קבוע,אחרת התוכנית תדפיס No. לדוגמה, נניח שתוכן הקובץ F הוא: ותוכן הקובץ F2 הוא: לאחר הפעלת התוכנית ע"י הפקודה: >awk -f P2 F יתקבל הפלט: Yes לאחר הפעלת התוכנית ע"י הפקודה: >awk -f P2 F2 יתקבל הפלט: Yes

The Awk Utility – example23 (2006 moed a) { for (i=1;i<=NF;i++) { col[i]=col[i]+$i row[NR]=row[NR]+$i } END { for (i=1;i<NF;i++) if ( col[i]!=col[i+1]){ for (i=1;i<NR;i++) if (row[i]!=row[i+1]) { print "No" exit } break } print "Yes" }

The Awk Utility – example24 { for(k=1;k<=NF;k++) A[ARGIND,FNR,k]=$k; } END { for (i=1;i<=FNR;i++) { for (j=1;j<=NF;j++) { for (k=1;k<=ARGIND;k++) sum+=A[k,i,j]; printf("%-5d",sum); sum=0; } printf("\n"); }

The Awk Utility – example25 { for(k=1;k<=NF;k++) A[0,FNR,k]+=$k; } END { for (i=1;i<=FNR;i++) { for (j=1;j<=NF;j++) printf("%-5d",A[0,i,j]); printf("\n"); }

The Awk Utility – example21 (2006 moed a) איך ממשיכים הלאה ?