Linux-AWK/C2/Built-in-Variables-in-awk/Oriya

From Script | Spoken-Tutorial
Jump to: navigation, search
Time
Narration
00:01 ବନ୍ଧୁଗଣ, “AWK ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” ଓ “AWK ସ୍କ୍ରିପ୍ଟ” ଉପରେ ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲକୁ ସ୍ୱାଗତ
00:07 ଏଥିରେ ଆମେ, “AWK ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” ଓ “AWK ସ୍କ୍ରିପ୍ଟ" ବିଷୟରେ ଶିଖିବା
00:14 ଏହାକୁ ଆମେ କେତେକ ଉଦାହରଣ ମାଧ୍ୟମରେ କରିବା
00:17 ଏହି ଟ୍ୟୁଟୋରିଆଲ୍ ରେକର୍ଡ କରିବାକୁ ମୁଁ Ubuntu Linux 16.04 OS ଏବଂ Gedit Text Editor 3.20.1 ବ୍ୟବହାର କରୁଛି
00:30 ଏହି ଟ୍ୟୁଟୋରିଆଲ୍ ପେଜ୍‌ରେ ଥିବା Code Files ଲିଙ୍କରେ ଏହି ଟ୍ୟୁଟୋରିଆଲରେ ବ୍ୟବହୃତ ଫାଇଲ୍‌ଗୁଡ଼ିକ ଉପଲବ୍ଧ ଅଛି.

ଦୟାକରି ସେଗୁଡ଼ିକୁ ଡାଉନଲୋଡ୍ କରି ବ୍ୟବହାର କରନ୍ତୁ

00:40 ଏହି ଟ୍ୟୁଟୋରିଆଲ୍ ଅଭ୍ୟାସ କରିବା ପାଇଁ ଆପଣ, ଏହି ୱେବ୍ ସାଇଟ୍‌ରେ ଥିବା ପୂର୍ବ AWK ଟ୍ୟୁଟୋରିଆଲଗୁଡ଼ିକ ବିଷୟରେ ଜାଣିଥିବା ଦରକାର
00:47 ଯଦି ଜାଣିନାହାନ୍ତି, ତେବେ ଆମ ୱେବ୍ ସାଇଟ୍‌ରେ ଥିବା ସମ୍ୱନ୍ଧିତ ଟ୍ୟୁଟୋରିଆଲଗୁଡ଼ିକୁ ଦେଖନ୍ତୁ
00:52 ପ୍ରଥମେ, ଚାଲନ୍ତୁ AWKରେ ଥିବା କିଛି "ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” ଦେଖିବା
00:57 କ୍ୟାପିଟଲ୍ RS, ଗୋଟିଏ ଇନପୁଟ୍ ଫାଇଲ୍‌ରେ "ରେକର୍ଡ ସେପାରେଟର୍”କୁ ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥାଏ. ଡିଫଲ୍ଟ ଭାବରେ ଏହା ହେଉଛି “NewLine”
01:07 କ୍ୟାପିଟଲ୍ FS, ଗୋଟିଏ ଇନପୁଟ୍ ଫାଇଲ୍‌ରେ "ଫିଲ୍ଡ ସେପାରେଟର୍”କୁ ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥାଏ.
01:13 ଡିଫଲ୍ଟ ଭାବରେ FSର ମୂଲ୍ୟ ହେଉଛି ଗୋଟିଏ “Whitespace”
01:18 କ୍ୟାପିଟଲ୍ ORS, "ଆଉଟପୁଟ୍ ରେକର୍ଡ ସେପାରେଟର୍"କୁ ପରିଭାଷିତ କରିଥାଏ.

ଡିଫଲ୍ଟ ଭାବରେ ଏହା ହେଉଛି “NewLine”

01:27 କ୍ୟାପିଟଲ୍ OFS, "ଆଉଟପୁଟ୍ ଫିଲ୍ଡ ସେପାରେଟର୍"କୁ ପରିଭାଷିତ କରିଥାଏ.

ଡିଫଲ୍ଟ ଭାବରେ ଏହା ହେଉଛି “Whitespace”

01:36 ଆସନ୍ତୁ, ଏହିଗୁଡ଼ିକର ଅର୍ଥ ବୁଝିବା
01:40 ଏବେ awkdemo ଫାଇଲ୍ ଉପରେ ଏକ ନଜର ପକାନ୍ତୁ
01:44 awk କମାଣ୍ଡ ସହିତ ଯେତେବେଳେ ଆମେ awkdemo ଫାଇଲ୍‌କୁ ପ୍ରୋସେସ୍ କରେ, ଏହା ଆମର "ଇନପୁଟ୍” ଫାଇଲ୍ ହୋଇଯାଏ.
01:51 ଦେଖନ୍ତୁ ଯେ, ଗୋଟିଏ Newline Character ଦ୍ୱାରା ସମସ୍ତ ରେକର୍ଡ ପରସ୍ପରଠାରୁ ପୃଥକ୍ ହୋଇଯାଇଛନ୍ତି
01:58 "ରେକର୍ଡ ସେପାରେଟର୍ RS ଭେରିଏବଲ୍” ପାଇଁ Newline ହେଉଛି ଡିଫଲ୍ଟ ଭାଲ୍ୟୁ.

ତେଣୁ, ସେଥିରେ ଆଉ କିଛି କରିବାର ନାହିଁ

02:08 ଧ୍ୟାନ ଦିଅନ୍ତୁ ଯେ, ସମସ୍ତ ଫିଲ୍ଡ Pipe ଚିହ୍ନ ଦ୍ୱାରା ପୃଥକ୍ ହୋଇଯାଇଛି.

ଏହି ବିଷୟରେ ଆମେ awkକୁ କିପରି ସୂଚିତ କରିବା? ଚାଲନ୍ତୁ ତାହା ଦେଖିବା

02:18 ଡିଫଲ୍ଟ ଭାବରେ, ଯେକୌଣସି ସଂଖ୍ୟକ "ସ୍ପେସ୍” କିମ୍ୱା "ଟାବ୍” ଫିଲ୍ଡଗୁଡ଼ିକୁ ପୃଥକ୍ କରିଥାଏ
02:24 ଆମ ପୂର୍ବ ଟ୍ୟୁଟୋରିଆଲଗୁଡ଼ିକରେ ଶିଖିଥିବା ଭଳି ଆମେ "ହାଇଫେନ୍ କ୍ୟାପିଟଲ୍ F” ସାହାଯ୍ୟରେ ଏହାକୁ ରିସେଟ୍ କରିପାରିବା
02:33 କିମ୍ୱା FS ଭେରିଏବଲ୍ ବ୍ୟବହାର କରି “BEGIN ବିଭାଗ"ରେ ଆମେ ଏହାକୁ ରିସେଟ୍ କରିପାରିବା
02:40 ଚାଲନ୍ତୁ ଏହାକୁ ଏକ ଉଦାହରଣ ସହ କରିବା.

ମନେକରନ୍ତୁ, ମୁଁ Rs. 5000ରୁ ଅଧିକ ଷ୍ଟାଇପେଣ୍ଡ ପାଉଥିବା ବିଦ୍ୟାର୍ଥୀମାନଙ୍କର ନାମ ଜାଣିବାକୁ ଚାହୁଁଛି

02:51 Ctrl, Alt ଓ T କୀ’ ଦାବି ଟର୍ମିନଲ୍ ଖୋଲନ୍ତୁ
02:57 cd କମାଣ୍ଡ ବ୍ୟବହାର କରି Code Files ଡାଉନଲୋଡ୍ ଓ ଏକ୍ସଟ୍ରାକ୍ଟ କରିଥିବା ଫୋଲ୍ଡର୍‌କୁ ଯାଆନ୍ତୁ
03:04 ଏଠାରେ ଦେଖାଯାଇଥିବା ଭଳି କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ
03:08 ଏଠାରେ, BEGIN ବିଭାଗରେ ଆମେ, ଏକ Pipe ଚିହ୍ନ ଭାବରେ FSର ଭାଲ୍ୟୁକୁ ଆସାଇନ୍ କରିଛେ.

ସେହିଭଳି ଭାବେ ଆମେ, RS ଭେରିଏବଲ୍‌କୁ ବଦଳାଇପାରିବା

03:19 କମାଣ୍ଡକୁ ନିଷ୍ପାଦନ କରିବା ପାଇଁ Enter ଦାବନ୍ତୁ
03:23 ଷ୍ଟାଇପେଣ୍ଡ ଭାବରେ Rs. 5000ରୁ ଅଧିକ ପାଉଥିବା ବିଦ୍ୟାର୍ଥୀମାନଙ୍କର ତାଲିକା ଆଉଟପୁଟ୍ ଦେଖାଉଛି
03:30 ଏଠାରେ, Name ଫିଲ୍ଡ ଓ Stipend ଫିଲ୍ଡ ଏକ ଖାଲି "ସ୍ପେସ୍” ଦ୍ୱାରା ପୃଥକ୍ କରାଯାଇଛି
03:36 ଆହୁରି ମଧ୍ୟ, ଗୋଟିଏ Newline Character ଦ୍ୱାରା ସମସ୍ତ ରେକର୍ଡ ପୃଥକ୍ ହୋଇଯାଇଛି
03:42 ମନେକରନ୍ତୁ, "ଆଉଟପୁଟ୍ ଫିଲ୍ଡ ସେପାରେଟର୍” ଭାବରେ ଆମେ "କୋଲନ୍”

ଏବଂ "ଆଉଟପୁଟ୍ ରେକର୍ଡ ସେପାରେଟର୍” ଭାବେ ଡବଲ୍ Newline ଚାହୁଁଛେ

03:52 ଏହାକୁ ଆମେ କିପରି କରିବା? ଚାଲନ୍ତୁ ତାହା ଦେଖିବା
03:55 ଟର୍ମିନଲ୍‌ରେ, ପୂର୍ବରୁ ନିଷ୍ପାଦିତ ହୋଇଥିବା କମାଣ୍ଡ ପାଇବା ପାଇଁ "ଅପ୍ ଆରୋ” କୀ’ ଦାବନ୍ତୁ
04:01 ଏଠାରେ ଦେଖାଯାଇଥିବା ଭଳି କମାଣ୍ଡକୁ ବଦଳା’ନ୍ତୁ

ଏବଂ ତା’ପରେ Enter ଦାବନ୍ତୁ

04:08 ଆମ ଇପ୍ସିତ ଫର୍ମାଟ୍‍ରେ ଆମେ ଆଉଟପୁଟ୍ ପାଇଲେ
04:12 ଏବେ, ମନେକରନ୍ତୁ ଆମର ନୂଆ ଇନପୁଟ୍ ହେଉଛି sample.txt
04:18 ଦେଖନ୍ତୁ, ଏଠାରେ "ଫିଲ୍ଡ ସେପାରେଟର୍” ହେଉଛି Newline ଏବଂ "ରେକର୍ଡ ସେପାରେଟର୍” ହେଉଛି ଡବଲ୍ Newline
04:27 ଆମେ ଏହି ଫାଇଲ୍‌ରୁ ରୋଲ୍ ନଂ. ଓ ନାମଗୁଡ଼ିକୁ କିପରି ଭାବେ ଏକ୍ସଟ୍ରାକ୍ଟ କରିବା?
04:32 ହଁ, ଆପଣ ଠିକ୍ ଅନୁମାନ କରିଛନ୍ତି. ଆମକୁ ଉଭୟ FS ଓ RS ଭେରିଏବଲ୍ସକୁ ବଦଳାଇବାକୁ ପଡ଼ିବ
04:39 ଏହି ଟ୍ୟୁଟୋରିଆଲକୁ ପଜ୍ କରି ଏକ ଆସାଇନମେଣ୍ଟ ଭାବେ ଏହାକୁ କରନ୍ତୁ
04:43 ତାହାପରେ, ଆସନ୍ତୁ ଏବେ ଅନ୍ୟ "ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” ଦେଖିବା
04:47 କ୍ୟାପିଟଲ୍ NR, awk ଦ୍ୱାରା ପ୍ରୋସେସ୍ କରାଯାଇଥିବା "ରେକର୍ଡଗୁଡ଼ିକର ସଂଖ୍ୟା” ଦେଇଥାଏ
04:53 କ୍ୟାପିଟଲ୍ NF, ସାମ୍ପ୍ରତିକ ରେକର୍ଡରେ "ଫିଲ୍ଡର ସଂଖ୍ୟା” ଦେଇଥାଏ
04:59 ଚାଲନ୍ତୁ ଏହା ଉପରେ ଏକ ଉଦାହରଣ ଦେଖିବା.

ମନେକରନ୍ତୁ, ଫାଇଲ୍‌ରେ ଆମେ ଅସମ୍ପୂର୍ଣ୍ଣ ଲାଇନ୍‌ଗୁଡ଼ିକୁ ଦେଖିବାକୁ ଚାହୁଁଛେ

05:07 ଏଠାରେ, ଅସମ୍ପୂର୍ଣ୍ଣ ଲାଇନ୍‌ର ଅର୍ଥ ହେଉଛି ଏଥିରେ ସାଧରଣ 6ଟି ଫିଲ୍ଡରୁ କମ୍ ରହିଛି
05:13 ଟର୍ମିନଲ୍‌କୁ ଯାଆନ୍ତୁ. Ctrl ଓ L କୀ’ ଦାବି ଟର୍ମିନଲ୍ ଖାଲି କରିଦିଅନ୍ତୁ
05:20 ଏଠାରେ ଦେଖାଯାଇଥିବା ଭଳି କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ
05:24 ଯେହେତୁ ଫିଲ୍ଡଗୁଡ଼ିକ "ପାଇପ୍ ଚିହ୍ନ” ଦ୍ୱାରା ପୃଥକ୍ କରାଯାଇଛି, BEGIN ବିଭାଗରେ FS ଭାଲ୍ୟୁକୁ "ପାଇପ୍ ଚିହ୍ନ"ରେ ସେଟ୍ କରନ୍ତୁ
05:33 ତା’ପରେ ଆମେ ଲେଖିଛେ NF not equal to 6
05:37 ସାମ୍ପ୍ରତିକ ଲାଇନ୍‌ରେ ଫିଲ୍ଡଗୁଡ଼ିକର ସଂଖ୍ୟା 6 ସହିତ ସମାନ କି ନୁହେଁ ଏହା ଯାଞ୍ଚ କରିବ
05:43 ଯଦି ସତ୍ୟ ହୋଇଥାଏ, ତେବେ $0 ଦ୍ୱାରା ଦର୍ଶାଯାଇଥିବା ସମଗ୍ର ଲାଇନ୍ ସମେତ ରେକର୍ଡର ଲାଇନ୍ ସଂଖ୍ୟା NRକୁ Print Section ପ୍ରିଣ୍ଟ କରିବ.

Enter ଦାବନ୍ତୁ

05:55 ଆଉଟପୁଟ୍‌ରେ, ରେକର୍ଡ ସଂଖ୍ୟା 16 ଅସମ୍ପୂର୍ଣ୍ଣ ରେକର୍ଡ ବୋଲି ଆମେ ଦେଖିପାରୁଛେ.

ଏଥିରେ 6 ବଦଳରେ କେବଳ 5ଟି ଫିଲ୍ଡ ଅଛି

06:05 ଚାଲନ୍ତୁ ଆଉ ଗୋଟିଏ ଉଦାହରଣ ଦେଖିବା.

ସେଥିରେ କେତୋଟି ଫିଲ୍ଡ ଅଛି, ତାହାର ବିଚାର ନ କରି ପ୍ରତ୍ୟେକ ବିଦ୍ୟାର୍ଥୀଙ୍କ ପାଇଁ ପ୍ରଥମ ଓ ଶେଷ ଫିଲ୍ଡରେ ଆମେ କିପରି ଭାବେ ପ୍ରିଣ୍ଟ କରିପାରିବା?

06:16 ଏଠାରେ ଦେଖାଯାଇଥିବା ଭଳି କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ
06:21 ଏଠାରେ ଆମେ, FS ଭେରିଏବଲ୍ ସେଟ୍ କରିବା ବଦଳରେ "ହାଇଫେନ୍ କ୍ୟାପିଟଲ୍ F” ବ୍ୟବହାର କରିଛେ.

Enter ଦାବନ୍ତୁ

06:30 ଫାଇଲ୍‌ରେ ପ୍ରତ୍ୟେକ ରେକର୍ଡ ପାଇଁ ଆମେ କେବଳ ପ୍ରଥମ ଓ ଶେଷ ଫିଲ୍ଡ ପାଇଲେ
06:36 ଏବେ ଆସନ୍ତୁ ଆଉ କିଛି ଚେଷ୍ଟା କରିବା
06:39 ମନେକରନ୍ତୁ, ବିଦ୍ୟାର୍ଥୀ ରେକର୍ଡଗୁଡ଼ିକୁ ଦୁଇଟି ଫାଇଲ୍‌ରେ ବିତରିତ କରାଯାଇଛି - demo1.txt ଓ demo2.txt
06:48 ଏହି ଦୁଇଟି ଫାଇଲ୍‌ରୁ ଆମେ ପ୍ରଥମ 3ଟି ଲାଇନ୍ ପ୍ରିଣ୍ଟ କରିବାକୁ ଚାହୁଁଛେ.

NR ଭେରିଏବଲ୍ ବ୍ୟବହାର କରି ଆମେ ଏହା କରିପାରିବା

06:57 ଏହା ହେଉଛି ଦୁଇଟି ଫାଇଲ୍‌ର ବିଷୟବସ୍ତୁ
07:02 ପ୍ରତ୍ୟେକ ଫାଇଲ୍‌ରୁ ପ୍ରଥମ 3ଟି ଲାଇନ୍ ପ୍ରଦର୍ଶିତ କରିବା ପାଇଁ ଟର୍ମିନଲ୍‌ରେ ନିମ୍ନ କମାଣ୍ଡକୁ ଟାଇପ୍ କରନ୍ତୁ
07:11 Enter ଦାବନ୍ତୁ
07:13 demo1.txt ଫାଇଲ୍‌ର କେବଳ ପ୍ରଥମ 3ଟି ରେକର୍ଡକୁ ଆଉଟପୁଟ୍ ଦେଖାଉଛି
07:20 ଦ୍ୱିତୀୟ ଫାଇଲ୍ ପାଇଁ ମଧ୍ୟ ସେହି ସମାନ ଜିନିଷକୁ ଆମେ କିପରି ପ୍ରିଣ୍ଟ କରିପାରିବା?
07:24 NR ବଦଳରେ FNR ବ୍ୟବହାର କରିବା ହେଉଛି ଏହାର ସମାଧାନ.

FNR ହେଉଛି, ସାମ୍ପ୍ରତିକ ଫାଇଲ୍‌ରେ "ସାମ୍ପ୍ରତିକ ରେକର୍ଡ ସଂଖ୍ୟା”

07:34 ପ୍ରତ୍ୟେକ ଥର ଗୋଟିଏ ନୂଆ ରେକର୍ଡ ପଢ଼ାଗଲେ FNR ବୃଦ୍ଧି ପାଇଥାଏ
07:39 ପ୍ରତ୍ୟେକ ଥର ଗୋଟିଏ ନୂଆ ଇନପୁଟ୍ ଫାଇଲ୍ ଆରମ୍ଭ ହେଲେ ଏହାକୁ ଶୂନ୍ କରାଯାଇଥାଏ
07:46 କିନ୍ତୁ, ପ୍ରୋଗ୍ରାମ୍‌ର ନିଷ୍ପାଦନ ଆରମ୍ଭ ହେବାଠାରୁ awk ପ୍ରୋସେସ୍ କରିଥିବା ଇନପୁଟ୍ ରେକର୍ଡଗୁଡ଼ିକର ସଂଖ୍ୟା ହେଉଛି NR
07:55 ଏକ ନୂଆ ଲାଇନ୍ ସହିତ ଏହା ଶୂନ୍‌କୁ ରିସେଟ ହୁଏ ନାହିଁ
07:59 ଟର୍ମିନଲ୍‌କୁ ଯାଆନ୍ତୁ.

ପୂର୍ବରୁ ନିଷ୍ପାଦିତ ହୋଇଥିବା କମାଣ୍ଡ ପାଇବା ପାଇଁ "ଅପ୍ ଆରୋ” କୀ’ ଦାବନ୍ତୁ

08:06 ନିମ୍ନାନୁସାରେ ପୂର୍ବ କମାଣ୍ଡକୁ ବଦଳା’ନ୍ତୁ.

NR ବଦଳରେ FNR ଟାଇପ୍ କରନ୍ତୁ

08:14 Print Sectionରେ, NR ପାଖରେ FNR ଟାଇପ୍ କରନ୍ତୁ. Enter ଦାବନ୍ତୁ
08:21 ଦେଖନ୍ତୁ, ଏବେ ଆମେ ଠିକ୍ ଆଉଟପୁଟ୍ ପାଇଲେ.

ନୂଆ ଫାଇଲ୍ ସହିତ FNR ଶୂନ୍‌କୁ ସେଟ୍ ହେଲା, କିନ୍ତୁ NR ବୃଦ୍ଧି ପାଇବାରେ ଲାଗିଛି

08:31 ଏବେ ଚାଲନ୍ତୁ ଅନ୍ୟ କେତେକ "ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” ଦେଖିବା.

FILENAME ଭେରିଏବଲ୍, ପଢ଼ାଯିବାକୁଥିବା ଫାଇଲ୍‌ର ନାମ ଦେଇଥାଏ

08:40 “କମାଣ୍ଡ ଲାଇନ୍"ରେ ପ୍ରଦାନ କରାଯାଇଥିବା “ଆର୍ଗୁମେଣ୍ଟସ୍"ର ସଂଖ୍ୟାକୁ ARGC ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥାଏ
08:46 "କମାଣ୍ଡ ଲାଇନ୍ ଆର୍ଗୁମେଣ୍ଟସ୍"କୁ ଷ୍ଟୋର୍ କରୁଥିବା "ଆରେ"କୁ ARGV ପ୍ରତିନିଧିତ୍ୱ କରିଥାଏ
08:52 Shell Environment Variables ଓ ତତସମ୍ପର୍କିତ ଭାଲ୍ୟୁଗୁଡ଼ିକର "ଆରେ"କୁ ENVIRON ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥାଏ
09:00 ଯେହେତୁ ARGV ଓ ENVIRON, awkରେ "ଆରେ” ବ୍ୟବହାର କରନ୍ତି, ସେହିଗୁଡ଼ିକୁ ଆମେ ପରବର୍ତ୍ତୀ ଟ୍ୟୁଟୋରିଆଲଗୁଡ଼ିକରେ ଦେଖିବା
09:09 ଚାଲନ୍ତୁ, ଏବେ FILENAME ଭେରିଏବଲ୍ ଉପରେ ଏକ ନଜର ପକାଇବା.

ପ୍ରୋସେସ୍ ହେବାକୁଥିବା ସାମ୍ପ୍ରତିକ ଫାଇଲ୍ ନାମକୁ ଆମେ କିପରି ପ୍ରିଣ୍ଟ କରିପାରିବା?

09:18 ଟର୍ମିନଲ୍‌କୁ ଯାଆନ୍ତୁ ଏବଂ ପ୍ରଦର୍ଶିତ ଅନୁସାରେ କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ
09:23 ଏଠାରେ ଆମେ, ଏକ "ଷ୍ଟ୍ରିଙ୍ଗ୍ କନକେଟେନେଶନ୍ ଅପରେଟର୍” ଭାବେ "ସ୍ପେସ୍” ବ୍ୟବହାର କରିଛେ.

କମାଣ୍ଡକୁ ନିଷ୍ପାଦନ କରିବା ପାଇଁ Enter ଦାବନ୍ତୁ

09:32 ଆଉଟପୁଟ୍, ଅନେକ ଥର "ଇନପୁଟ୍ ଫାଇଲ୍ ନେମ୍” ଦେଖାଉଛି
09:37 ଏହାର କାରଣ ହେଉଛି, ଏହି କମାଣ୍ଡ, awkdemo.txt ଫାଇଲ୍‌ରେ ପ୍ରତ୍ୟେକ ଧାଡ଼ି ପାଇଁ ଫାଇଲ୍ ନାମକୁ ଥରେ ଲେଖାଏଁ ପ୍ରିଣ୍ଟ କରିଥାଏ.

ଏହାକୁ ଆମେ କିପରି ଭାବେ କେବଳ ଥରେ ହିଁ ପ୍ରିଣ୍ଟ କରିପାରିବା?

09:48 ଟର୍ମିନଲ୍ ଖାଲି କରନ୍ତୁ.

ପୂର୍ବରୁ ନିଷ୍ପାଦିତ ହୋଇଥିବା କମାଣ୍ଡ ପାଇବା ପାଇଁ "ଅପ୍ ଆରୋ” କୀ’ ଦାବନ୍ତୁ

09:55 ଏଠାରେ ଦେଖାଯାଇଥିବା ଭଳି କମାଣ୍ଡକୁ ବଦଳା’ନ୍ତୁ.

Enter ଦାବନ୍ତୁ

10:02 ଏବେ ଆମେ, କେବଳ ଗୋଟିଏ ଥର ଫାଇଲ୍ ନାମ ପାଇଲେ
10:06 awkରେ ଅନ୍ୟ କେତେକ “ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” ଅଛି.

ସେଗୁଡ଼ିକ ବିଷୟରେ ଅଧିକ ଜାଣିବା ପାଇଁ ଦୟାକରି ଇଣ୍ଟର୍ନେଟ୍ ବ୍ରାଉଜ୍ କରନ୍ତୁ

10:14 ମନେକରନ୍ତୁ, ପାସ୍ କରିଥିବା ଏବଂ Rs. 8000ରୁ ଅଧିକ ଷ୍ଟାଇପେଣ୍ଡ ପାଉଥିବା ବିଦ୍ୟାର୍ଥୀମାନଙ୍କୁ ଆମେ ଖୋଜିବାକୁ ଚାହୁଁଛେ
10:22 "ଆଉଟପୁଟ୍ ଫିଲ୍ଡ ସେପାରେଟର୍” ଭାବେ "କମା” ବ୍ୟବହାର କରନ୍ତୁ ଏବଂ The data is shown for file ତଥା Footer Sectionରେ ଫାଇଲ୍‌ର ନାମ ପ୍ରିଣ୍ଟ କରନ୍ତୁ.

ଏହାକୁ ଆମେ କିପରି କରିବା?

10:36 ଟର୍ମିନଲ୍‌ରେ ନିମ୍ନ କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ.

Enter ଦାବନ୍ତୁ

10:43 ଆମେ ଦେଖିପାରୁଛେ ଯେ, କେବଳ ଜଣେ ବିଦ୍ୟାର୍ଥୀ ପାସ୍ କରିଛି ଏବଂ Rs. 8000ରୁ ଅଧିକ ଷ୍ଟାଇପେଣ୍ଡ ପାଉଛି,

ଆଉ ରେକର୍ଡ ନମ୍ୱର୍ ହେଉଛି 2

10:53 ଫାଇଲ୍ ନାମକୁ ମଧ୍ୟ ଆମେ "ଫୂଟର୍"ରେ ଦେଖିପାରୁଛେ, ଯେପରି ଚାହୁଁଥିଲେ
10:58 ଅଧିକରୁ ଅଧିକ ଜଟିଳ କାମ ପାଇଁ ଆମେ awkର ବ୍ୟବହାର କରିପାରିବା
11:03 ସେହି କ୍ଷେତ୍ରରେ, ପ୍ରତ୍ୟେକ ଥର ଟର୍ମିନଲ୍‌ରେ କମାଣ୍ଡ ଲେଖିବା ଅଧିକ କଷ୍ଟକର ହୋଇଯିବ
11:09 ତାହା ବଦଳରେ ଆମେ awk ପ୍ରୋଗ୍ରାମ୍‌କୁ ଗୋଟିଏ ପୃଥକ୍ ଫାଇଲ୍‌ରେ ଲେଖିପାରିବା
11:14 ନିଷ୍ପାଦନଯୋଗ୍ୟ କରିବା ପାଇଁ ସେହି ଫାଇଲ୍‌ରେ "ଡଟ୍ awk” ଏକ୍ସଟେନ୍ସନ୍ ଥିବା ଉଚିତ
11:19 ନିଷ୍ପାଦନ କରିବା ସମୟରେ, “awk କମାଣ୍ଡ” ସହିତ ଆମକୁ କେବଳ awk ପ୍ରୋଗ୍ରାମ୍ ଫାଇଲ୍ ନାମ ନିର୍ଦ୍ଦିଷ୍ଟ କରିବାକୁ ହେବ
11:26 ଏହା କରିବା ପାଇଁ ଆମକୁ, "ହାଇଫେନ୍ ସ୍ମଲ୍ f” ଅପ୍ସନ୍ ବ୍ୟବହାର କରିବାକୁ ପଡ଼ିବ.

ଗୋଟିଏ ଉଦାହରଣ ଦେଖନ୍ତୁ

11:35 ମୁଁ ଗୋଟିଏ awk ପ୍ରୋଗ୍ରାମ୍ ଲେଖିସାରିଛି ଏବଂ prog1 dot awk ଭାବରେ ସେଭ୍ କରିସାରିଛି
11:42 ଏହି କୋଡ୍, "କୋଡ୍ ଫାଇଲ୍ସ” ଲିଙ୍କରେ ମଧ୍ୟ ଉପଲବ୍ଧ ଅଛି
11:46 ଟର୍ମିନଲ୍ କୁ ଯାଆନ୍ତୁ.

ଶେଷ ନିଷ୍ପାଦିତ କମାଣ୍ଡର "ସିଙ୍ଗଲ୍ କୋଟ୍ସ” ଭିତରେ ଆମେ କ’ଣ ଲେଖିଛେ ଦେଖିପାରୁଛନ୍ତି?

11:55 prog1.awk ଫାଇଲ୍‌ର ବିଷୟବସ୍ତୁ ପୂରା ସମାନ ଅଛି
12:00 ଏତିକିମାତ୍ର ପ୍ରଭେଦ ଅଛି ଯେ, awk ଫାଇଲ୍‌ରେ ଆମେ "ସିଙ୍ଗଲ୍ କୋଟ୍ସ” ଭିତରେ ଲେଖିନାହେଁ
12:07 ଫାଇଲ୍‌କୁ ନିଷ୍ପାଦନ କରିବା ପାଇଁ, ନିମ୍ନଲିଖିତକୁ ଟର୍ମିନଲ୍‌ରେ ଟାଇପ୍ କରନ୍ତୁ -

awk ସ୍ପେସ୍ ହାଇଫେନ୍ ସ୍ମଲ୍ f ସ୍ପେସ୍ prog1.awk ସ୍ପେସ୍ awkdemo.txt ଏବଂ Enter ଦାବନ୍ତୁ

12:24 ଆମେ ପୂରା ସେହି ସମାନ ଆଉଟପୁଟ୍ ପାଇଲେ, ଯାହା ପୂର୍ବରୁ ଦେଖିଥିଲେ
12:29 ତେଣୁ, ଆପଣ ଏହିଭଳି ଭାବେ awk ପ୍ରୋଗ୍ରାମ୍ସ ଲେଖିପାରିବେ ଏବଂ ଅନେକ ଥର ବ୍ୟବହାର କରିପାରିବେ
12:35 ଏଥିସହିତ ଆମେ ଏହି ଟ୍ୟୁଟୋରିଆଲର ସମାପ୍ତିକୁ ଆସିଲେ.

ସଂକ୍ଷିପ୍ତରେ -

12:40 ବିଭିନ୍ନ ଉଦାହରଣ ବ୍ୟବହାର କରି

ଏହି ଟ୍ୟୁଟୋରିଆଲରେ ଆମେ - "ବିଲ୍ଟ-ଇନ୍ ଭେରିଏବଲ୍ସ” awk script ବିଷୟରେ ଶିଖିଲେ

12:48 ଏକ ଆସାଇନମେଣ୍ଟ ଭାବେ - awkdemo.txt ଫାଇଲ୍ ରେ 5ମ ଲାଇନ୍‌ର ଶେଷ ଫିଲ୍ଡକୁ ପ୍ରିଣ୍ଟ କରିବା ପାଇଁ ଗୋଟିଏ awk ସ୍କ୍ରିପ୍ଟ ଲେଖନ୍ତୁ
12:58 ଟର୍ମିନଲ୍‌ରେ, ସିଷ୍ଟମ୍ ଫାଇଲ୍ /etc/passwd ଖୋଲନ୍ତୁ
13:05 ସେଠାରେ ସମସ୍ତ "ସେପାରେଟର୍” ଚିହ୍ନଟ କରନ୍ତୁ
13:09 20ତମ ଲାଇନ୍ ପରଠାରୁ ଫାଇଲ୍‌କୁ ପ୍ରୋସେସ୍ କରିବା ପାଇଁ ଏବେ ଏକ ସ୍କ୍ରିପ୍ଟ ଲେଖନ୍ତୁ
13:15 ତାହା ମଧ୍ୟ, କେବଳ 6ଟି ଫିଲ୍ଡରୁ ଅଧିକ ଥିବା ଲାଇନ୍‌ଗୁଡ଼ିକ ପାଇଁ
13:20 ସେହି ନିର୍ଦ୍ଦିଷ୍ଟ ଲାଇନ୍‌ରେ ଲାଇନ୍ ନମ୍ୱର୍, ସମଗ୍ର ଲାଇନ୍ ଓ ଫିଲ୍ଡଗୁଡ଼ିକର ଗଣନା ଆପଣ ପ୍ରିଣ୍ଟ କରିବେ
13:28 ନିମ୍ନ ଲିଙ୍କରେ ଉପଲବ୍ଧ ଭିଡିଓ ସ୍ପୋକନ୍‍ ଟ୍ୟୁଟୋରିଆଲ୍‍ ପ୍ରୋଜେକ୍ଟକୁ ସାରାଂଶିତ କରେ.

ଦୟାକରି ଏହାକୁ ଡାଉନଲୋଡ୍ କରି ଦେଖନ୍ତୁ

13:36 ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ ପ୍ରୋଜେକ୍ଟ ଟିମ୍, ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ସ ବ୍ୟବହାର କରି କର୍ମଶାଳାମାନ ଚଲାନ୍ତି ଏବଂ ପ୍ରମାଣପତ୍ର ଦିଅନ୍ତି.

ଅଧିକ ବିବରଣୀ ପାଇଁ ଦୟାକରି ଆମକୁ ଲେଖନ୍ତୁ

13:47 ଦୟାକରି ଏହି ଫୋରମରେ ନିଜର ସମୟବଦ୍ଧ ପ୍ରଶ୍ନ ପୋଷ୍ଟ୍ କରନ୍ତୁ
13:51 ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ ପ୍ରୋଜେକ୍ଟ, ଭାରତ ସରକାରଙ୍କ MHRDର NMEICT ଦ୍ୱାରା ଅନୁଦାନ ପ୍ରାପ୍ତ.

ଏହି ମିଶନ୍ ଉପରେ ଅଧିକ ବିବରଣୀ ନିମ୍ନ ଲିଙ୍କରେ ଉପଲବ୍ଧ

14:03 IIT Bombay ତରଫରୁ ମୁଁ ପ୍ରଦୀପ ଚନ୍ଦ୍ର ମହାପାତ୍ର ଆପଣଙ୍କଠାରୁ ବିଦାୟ ନେଉଛି.

ଆମ ସହିତ ଜଡ଼ିତ ହୋଇଥିବାରୁ ଧନ୍ୟବାଦ

Contributors and Content Editors

PoojaMoolya, Pradeep