పేరు
gawk - నమూనా స్కానింగ్ మరియు ప్రాసెసింగ్ భాష
సంక్షిప్తముగా
gawk [POSIX లేదా GNU శైలి ఎంపికలు] -f ప్రోగ్రామ్-ఫైల్ [ - ] ఫైల్ ...
gawk [POSIX లేదా GNU శైలి ఎంపికలు] [ - ] ప్రోగ్రామ్-టెక్స్ట్ ఫైల్ ...
pgawk [POSIX లేదా GNU శైలి ఐచ్ఛికాలు] -f ప్రోగ్రామ్-ఫైల్ [ - ] ఫైల్ ...
pgawk [POSIX లేదా GNU శైలి ఐచ్ఛికాలు] [ - ] ప్రోగ్రామ్-టెక్స్ట్ ఫైల్ ...
వివరణ
Gawk అనేది AWK ప్రోగ్రామింగ్ భాష యొక్క GNU ప్రాజెక్ట్ యొక్క అమలు. ఇది POSIX 1003.2 కమాండ్ లాంగ్వేజ్ అండ్ యుటిలిటీస్ స్టాండర్డ్ లో భాష యొక్క నిర్వచనంకు అనుగుణంగా ఉంటుంది. ఈ వెర్షన్ క్రమంగా, AWK ప్రోగ్రామింగ్ లాంగ్వేజ్లో , అహో, కెర్నిఘాన్, మరియు వీన్బెర్గెర్లచే వివరణపై ఆధారపడింది, UNIX awk యొక్క సిస్టమ్ V విడుదల 4 సంస్కరణలో ఉన్న అదనపు లక్షణాలతో. Gawk ఇంకా ఇటీవల బెల్ లాబొరేటరీస్ అక్క ఎక్స్టెన్షన్స్ను మరియు అనేక గ్నూ-స్పెసిఫిక్ ఎక్స్టెన్షన్స్ను అందిస్తుంది.
Pawawk అనేది గోకు యొక్క ప్రొఫైల్ వెర్షన్. ఆ కార్యక్రమాలు చాలా నెమ్మదిగా నడుపుతుండటంతోపాటు, ఇది గ్యాక్కు ప్రతి విధంగా ఒకేలా ఉంటుంది, మరియు ఇది స్వయంచాలకంగా అమలులో ఉన్న ప్రొఫైల్ను అమలులోనే awkprof.out లో ఉత్పత్తి చేస్తుంది. దిగువ - ప్రొఫైల్ ఎంపికను చూడండి.
కమాండ్ లైన్లో, AWK ప్రోగ్రామ్ టెక్స్ట్ ( -f లేదా - ఫైల్ ఎంపికలు ద్వారా సరఫరా చేయకపోతే) మరియు ARGC మరియు ARGV ముందు నిర్వచించబడిన AWK వేరియబుల్స్లో లభించే విలువలు ఉంటాయి.
ఎంపిక ఫార్మాట్
Gawk ఎంపికలు సంప్రదాయ POSIX ఒక అక్షర ఎంపికలు, లేదా గ్నూ శైలి దీర్ఘ ఎంపికలు కావచ్చు. POSIX ఎంపికలు ఒకే `` తో ప్రారంభమవుతాయి, దీర్ఘకాలిక ఎంపికలు `` - "తో ప్రారంభమవుతాయి. గ్నూ-స్పెసిఫిక్ ఫీచర్లు మరియు POSIX తప్పనిసరి ఫీచర్స్ కొరకు లాంగ్ ఐచ్చికాలు అందించబడతాయి.
POSIX స్టాండర్డ్ తర్వాత, వాయు- స్పెసిఫిక్ ఎంపికలు వాదనలు ద్వారా -W ఎంపికకు సరఫరా చేయబడతాయి. బహుళ -W ఐచ్చికాలు సరఫరా చేయబడవచ్చు ప్రతి -W ఐచ్చికము అనునది దీర్ఘకాలిక ఎంపికను కలిగి ఉంది, క్రింద వివరించినట్లుగా. సుదీర్ఘ ఎంపికలకు వాదనలు ఏమైనా ప్రమేయ ఖాళీలు లేని, లేదా = కమాండ్ లైన్ ఆర్గ్యుమెంట్లో అందించబడతాయి, ఒక = సంకేతంచే ఎంపిక చేయబడతాయి. సంక్షిప్తీకరణ ప్రత్యేకంగా మిగిలి ఉన్నంతవరకు లాంగ్ ఎంపికలు సంక్షిప్తంగా ఉండవచ్చు.
ఎంపికలు
Gawk అక్షర క్రమంలో జాబితా కింది ఎంపికలను అంగీకరిస్తుంది.
-F fs
-field-separator fs ఇన్పుట్ ఫీల్డ్ విభజించడానికి ( FS ముందే నిర్వచించబడిన వేరియబుల్ విలువ) కోసం fs ను ఉపయోగించండి.
-v var = val
--assign var = val వేరియబుల్ var కు విలువ విలువ అప్పగించుము, కార్యక్రమం అమలు ముందు. అటువంటి వేరియబుల్ విలువలు ఒక AWK ప్రోగ్రామ్ యొక్క BEGIN బ్లాక్ కు అందుబాటులో ఉన్నాయి.
-f ప్రోగ్రామ్-ఫైల్
- ఫైల్ ప్రోగ్రామ్-ఫైల్ AWK ప్రోగ్రామ్ మూలం ఫైల్ ప్రోగ్రామ్-ఫైల్ నుండి, మొదటి కమాండ్ లైన్ ఆర్గ్యుమెంట్కు బదులుగా బదులుగా చదవండి. బహుళ -f (లేదా --file ) ఐచ్ఛికాలు ఉపయోగించబడవచ్చు.
-mf NNN
-Mr NNN విలువ NNN కు వివిధ మెమొరీ పరిమితులను అమర్చండి. F ఫ్లాగ్ గరిష్ట సంఖ్యలను అమర్చుతుంది మరియు r ఫ్లాగ్ గరిష్ట రికార్డు పరిమాణాన్ని అమర్చుతుంది. ఈ రెండు జెండాలు మరియు -m ఎంపిక UNIX awk యొక్క బెల్ లాబొరేటరీస్ పరిశోధన వెర్షన్ నుండి. గాగ్ చేత వారు నిర్లక్ష్యం చేయబడతారు, ఎందుకంటే గోకు ముందు నిర్వచించబడిన పరిమితులు లేవు.
-W కంపాట్
-W సంప్రదాయ
--compat
- సాంప్రదాయ రీతిలో అమలు అనుకూలత మోడ్లో, Gawk UNIX awk కు సమానంగా ప్రవర్తిస్తుంది; GNU-నిర్దిష్ట పొడిగింపులలో ఏవీ గుర్తించబడలేదు. ఈ ఐచ్ఛికం యొక్క ఇతర రూపాల్లో - - సాంప్రదాయ సాంప్రదాయం ఉపయోగపడుతుంది. మరింత సమాచారం కోసం, క్రింద, GNU పొడిగింపులు చూడండి.
-W కాపీహక్కు
-W కాపీరైట్
--copyleft
- కాపీరైటు స్టాండర్డ్ అవుట్పుట్ మరియు నిష్క్రమణ విజయవంతంగా GNU కాపీరైట్ సమాచార సందేశానికి సంక్షిప్త సంస్కరణను ముద్రించండి.
-W డంప్-వేరియబుల్స్ [ = ఫైల్ ]
- dump-variables [ = file ] ప్రపంచ వేరియబుల్స్ యొక్క ఒక క్రమబద్ధీకరించిన జాబితా, వాటి రకాలు మరియు తుది విలువలను ఫైల్ చేయడానికి ముద్రించండి. ఏ ఫైల్ అందించబడకపోతే, ప్రస్తుత డైరెక్టరీలో gkk అనే ఫైల్ అక్కావార్స్ అనే పేరును ఉపయోగిస్తుంది .
అన్ని గ్లోబల్ వేరియబుల్స్ యొక్క జాబితాను కలిగి ఉంది, మీ కార్యక్రమాలలో టైపోగ్రాఫికల్ లోపాలు చూడటం ఉత్తమ మార్గం. మీరు చాలా ఫంక్షన్లతో ఒక పెద్ద ప్రోగ్రామ్ను కలిగి ఉంటే మీరు ఈ ఎంపికను కూడా ఉపయోగించుకుంటారు మరియు మీరు మీ ఫంక్షన్లు స్థానికంగా ఉండటానికి ఉద్దేశించిన ప్రపంచ వేరియబుల్స్ను ఉపయోగించడం లేదని మీరు అనుకోవాలనుకోండి. (ఇది నేను , j , మొదలైనవి వంటి సాధారణ వేరియబుల్ పేర్లతో తయారుచేసే ఒక ప్రత్యేకమైన తప్పు.)
-W సహాయం
-W వినియోగం
--సహాయం
--usage స్టాండర్డ్ అవుట్పుట్ నందలి అందుబాటులోని ఐచ్చికముల సాపేక్షముగా చిన్న సారాంశం ముద్రించు. ( GNU కోడింగ్ స్టాండర్డ్స్ ప్రకారం , ఈ ఎంపికలు వెంటనే, విజయవంతమైన నిష్క్రమణకు కారణమవుతాయి.)
-W మెత్తటి [ = ప్రాణాంతకం ]
- lint [ = ప్రాణాంతకమైన ] XMLAW అమలుకు సందేహాస్పదమైన లేదా పోర్టబుల్ కాని నిర్మాణానికి సంబంధించిన హెచ్చరికలను అందించండి. ప్రాణాంతకమైన ఐచ్ఛిక వాదనతో, మెత్తటి హెచ్చరికలు ప్రాణాంతక లోపాలుగా మారాయి. ఇది తీవ్రమైన కావచ్చు, కానీ దాని ఉపయోగం ఖచ్చితంగా క్లీనర్ AWK కార్యక్రమాల అభివృద్ధిని ప్రోత్సహిస్తుంది.
-W మెత్తటి-పాత
- చిన్న పాత Unix యొక్క అసలు వెర్షన్ పోర్టబుల్ లేని నిర్మాణాలు గురించి హెచ్చరికలు అందించండి.
-W Gen-po
--gen-po స్కాన్ మరియు AWK ప్రోగ్రామ్ను అన్వయించడం మరియు ప్రోగ్రామ్లోని అన్ని స్థానికీకరించదగిన స్ట్రింగ్ల కోసం ఎంట్రీలతో ప్రామాణిక అవుట్పుట్పై ఒక GNU. పో ఫార్మాట్ ఫైల్ను ఉత్పత్తి చేస్తుంది. కార్యక్రమం కూడా అమలు చేయబడలేదు. .po ఫైళ్లు మరింత సమాచారం కోసం GNU gettext పంపిణీ చూడండి.
-W కాని దశాంశ-డేటా
--non-decimal-data ఇన్పుట్ డేటాలో అష్టల్ మరియు హెక్సాడెసిమల్ విలువలను గుర్తించండి. గొప్ప హెచ్చరికతో ఈ ఎంపికను ఉపయోగించండి!
-W posix
--posix ఈ క్రింది అదనపు పరిమితులు, అనుకూలత మోడ్ మారుతుంది:
*
\ x ఎస్కేప్ సన్నివేశాలు గుర్తించబడలేదు.
*
FS ఒక ఖాళీకి అమర్చినప్పుడు క్షేత్రము వేరుచేయుటకు ఖాళీ మరియు టాబ్ ప్రమేయం మాత్రమే, కొత్త లైన్ లేదు.
*
మీరు తర్వాత పంక్తులను కొనసాగించలేరు ? మరియు:.
*
కీవర్డ్ ఫంక్షన్ కోసం పర్యాయపదంగా ఫంక్ గుర్తించబడలేదు.
*
ఆపరేటర్లు ** మరియు ** = ^ మరియు ^ = స్థానంలో ఉపయోగించబడవు.
*
Fflush () ఫంక్షన్ అందుబాటులో లేదు.
-W ప్రొఫైల్ [ = prof_file ]
--profile [ = prof_file ] ప్రొఫైలింగ్ డాటా prof_file కు పంపించుము . డిఫాల్ట్ is awkprof.out . Gawk తో అమలు చేసినప్పుడు, ప్రొఫైల్ కేవలం కార్యక్రమం యొక్క "అందంగా ముద్రించిన" వెర్షన్. Pgawk తో నడుపునప్పుడు , ప్రొఫైల్లోని ప్రతి ప్రకటన యొక్క అమలు గణనలను ఎడమ మార్జిన్లో మరియు ప్రతి యూజర్-నిర్వచిత ఫంక్షన్ కోసం ఫంక్షన్ కాల్ గణనలు కలిగి ఉంటాయి.
-W తిరిగి విరామం
--re-interval రెగ్యులర్ వ్యక్తీకరణ పోలికలో విరామం వ్యక్తీకరణలను ఉపయోగించుట ప్రారంభించండి (దిగువన రెగ్యులర్ ఎక్స్ప్రెషన్స్ చూడండి). ఇంటర్వెల్ ఎక్స్ప్రెషన్స్ సాంప్రదాయకంగా AWK భాషలో అందుబాటులో ఉండలేదు. POSIX ప్రమాణం వాటిని జోడించి, ఒకదానితో సరిసమానంగా మరియు ఇంద్రెప్ చేయడానికి. అయినప్పటికీ, వారి ఉపయోగం పాత AWK ప్రోగ్రామ్లను విచ్ఛిన్నం చేస్తుందని, అందువల్ల ఈ ఎంపికతో అభ్యర్థించినట్లయితే, లేదా - ఆపిజిక్స్ పేర్కొన్నట్లయితే వాటిని మాత్రమే Gawk అందిస్తుంది .
-W మూలం ప్రోగ్రామ్ టెక్స్ట్
--source program-text AWK ప్రోగ్రామ్ సోర్స్ కోడ్గా ప్రోగ్రామ్-టెక్స్ట్ను ఉపయోగించండి. ఈ ఐచ్చికము కమాండ్ లైన్ లో సోర్స్ కోడ్తో లైబ్రరీ ఫంక్షన్ల ( ఇంటర్ఫేస్ -f మరియు - యిచ్చిన ఐచ్ఛికాల ద్వారా వాడబడుతుంది) సులభమగుటకు అనుమతించును . ఇది షెల్ స్క్రిప్ట్స్లో ఉపయోగించే పెద్ద AWK ప్రోగ్రామ్లకు ప్రధానంగా ఉద్దేశించబడింది.
-W వెర్షన్
- ప్రామాణిక అవుట్పుట్ న gawk యొక్క ఈ ప్రత్యేక కాపీ కోసం సంస్కరణ ముద్రణ వెర్షన్ సమాచారం. ఉచిత సిస్టమ్ ఫౌండేషన్ పంపిణీ చేస్తున్న సంస్కరణలకు సంబంధించి మీ సిస్టమ్పై ఉన్న గ్యాక్ యొక్క ప్రస్తుత కాపీ తాజాగా ఉంటే తెలుసుకోవడం ప్రధానంగా ఉపయోగపడుతుంది. దోషాలను నివేదించినప్పుడు ఇది కూడా ఉపయోగపడుతుంది. ( GNU కోడింగ్ స్టాండర్డ్స్ ప్రకారం , ఈ ఎంపికలు వెంటనే, విజయవంతమైన నిష్క్రమణకు కారణమవుతాయి.)
- ఎంపికలు ముగింపు సిగ్నల్. AWK ప్రోగ్రామ్కు మరింత ఆర్గ్యుమెంట్లను అనుమతించుటకు ఇది `` - '' తో మొదలవుతుంది. ఇది చాలా ఇతర POSIX ప్రోగ్రామ్స్ ఉపయోగించే వాదన పార్సింగ్ కన్వెన్షన్తో అనుగుణంగా ఉంటుంది.
అనుకూలత మోడ్లో, ఏ ఇతర ఎంపికలు చెల్లనిదిగా ఫ్లాగ్ చేయబడ్డాయి, అయితే అవి విస్మరించబడతాయి. సాధారణ చర్యలో, ప్రోగ్రామ్ టెక్స్ట్ అందించబడినంత వరకు, తెలియని ఎంపికలు ప్రాసెస్ కోసం ARGV శ్రేణిలో AWK ప్రోగ్రామ్కు పంపబడతాయి . ఇది AWK కార్యక్రమాలను `` #! '' అమలుచేసే ఇంటర్ప్రెటర్ విధానం ద్వారా ఉపయోగపడుతుంది.
AWK ప్రోగ్రాం ఎగ్జిక్యూషన్
ఒక AWK కార్యక్రమం నమూనా-చర్య స్టేట్మెంట్స్ మరియు ఐచ్ఛిక ఫంక్షన్ నిర్వచనాల క్రమాన్ని కలిగి ఉంటుంది.
నమూనా { చర్య ప్రకటనలు }
ఫంక్షన్ పేరు ( పారామితి జాబితా ) { statements }
పేర్కొన్నట్లయితే ప్రోగ్రామ్-ఫైల్ (లు) నుండి వాదనలు నుండి - సోర్స్కు లేదా కమాండ్ లైన్పై మొదటి నాన్-ఎంపిక ఆర్గ్యుమెంట్ నుండి గాక్ మొదటి ప్రోగ్రామ్ మూలాన్ని చదువుతాడు. -f మరియు --source ఐచ్ఛికాలు కమాండ్ లైన్ లో చాలాసార్లు ఉపయోగించబడవచ్చు. ప్రోగ్రామ్ ప్రోగ్రామ్ పాఠం మరియు ఆదేశ పంక్తి మూలం పాఠాలు కలిసి గీసినట్లుగా గ్యాక్ ప్రోగ్రామ్ టెక్స్ట్ను చదువుతాడు. AWK ఫంక్షన్ల గ్రంథాలయాలను రూపొందించడానికి ఇది ఉపయోగకరంగా ఉంటుంది, వాటిని ఉపయోగించే ప్రతి కొత్త AWK ప్రోగ్రామ్లో వాటిని చేర్చకుండానే. ఇది కమాండ్ లైన్ కార్యక్రమాలతో లైబ్రరీ ఫంక్షన్లను కలపగల సామర్థ్యాన్ని కూడా అందిస్తుంది.
పర్యావరణ వేరియబుల్ AWKPATH -f ఐచ్చికంతో సోర్స్ ఫైళ్ళను కనుగొన్నప్పుడు ఉపయోగించటానికి అన్వేషణ మార్గమును నిర్దేశిస్తుంది. ఈ వేరియబుల్ ఉనికిలో లేకపోతే, డిఫాల్ట్ మార్గం ".: / Usr / local / share / awk" . ( గ్యాక్ ఎలా నిర్మించబడిందో మరియు వ్యవస్థాపించిన దానిపై ఆధారపడి వాస్తవ డైరెక్టరీ మారవచ్చు.) -f ఎంపికకు ఇచ్చిన ఫైల్ పేరు ఒక `` / '' అక్షరాన్ని కలిగి ఉన్నట్లయితే, పాత్ శోధన చేయబడదు.
Gawk క్రింది క్రమంలో AWK ప్రోగ్రామ్లను అమలు చేస్తుంది. మొదట, -v ఐచ్చికం ద్వారా తెలుపబడిన అన్ని వేరియబుల్ కేటాయింపులు నిర్వర్తించబడతాయి. తరువాత, Gawk ప్రోగ్రామ్ను అంతర్గత రూపంలోకి కలుపుతుంది . అప్పుడు, Gawk కోడ్ను బ్లాక్ బ్లాక్ (లు) (ఏదైనా ఉంటే) లో అమలు చేస్తుంది, తర్వాత ARGV శ్రేణిలో పేర్కొన్న ప్రతి ఫైల్ను చదవబడుతుంది. కమాండ్ లైన్ పేరుతో ఏ ఫైల్స్ లేకపోతే, gawk ప్రామాణిక ఇన్పుట్ను చదువుతుంది.
కమాండ్ లైన్ పై ఒక ఫైల్ పేరు var = val రూపంలో ఉంటే అది వేరియబుల్ కేటాయింపుగా పరిగణించబడుతుంది. వేరియబుల్ var value val కేటాయించబడుతుంది. (ఏదైనా BEGIN బ్లాక్ (లు) అమలు అయ్యే తర్వాత ఇది జరుగుతుంది.) ఖాళీలను మరియు రికార్డుల్లో ఇన్ పుట్ ఎలా విభజించబడుతుందో నియంత్రించడానికి AWK ఉపయోగించే వేరియబుల్స్కు డైనమిక్ విలువలను కేటాయించడం కోసం కమాండ్ లైన్ వేరియబుల్ అసైన్మెంట్ చాలా ఉపయోగకరంగా ఉంటుంది. ఒకే డేటా దత్తాంశంలో బహుళ పాస్లు అవసరమైనట్లయితే ఇది రాష్ట్రాన్ని నియంత్రించడానికి ఉపయోగపడుతుంది.
ARGV యొక్క ఒక నిర్దిష్ట మూలకం యొక్క విలువ ఖాళీగా ఉంటే ( "" ), దానిపై గ్యాక్ దాటవేస్తుంది.
ఇన్పుట్లోని ప్రతి రికార్డుకు, AWK ప్రోగ్రామ్లో ఏదైనా నమూనా సరిపోతుందో లేదో చూడటానికి Gawk పరీక్షలు. రికార్డు సరిపోయే ప్రతి నమూనా కోసం, సంబంధిత చర్య అమలు చేయబడుతుంది. కార్యక్రమంలో అవి సంభవించే క్రమంలో నమూనాలు పరీక్షించబడతాయి.
చివరగా, అన్ని ఇన్పుట్ అయిపోయిన తరువాత, గ్యాక్ ఎండ్ బ్లాక్ (లు) (ఏదైనా ఉంటే) లో కోడ్ను నిర్వహిస్తుంది.
వేరియబుల్స్, రికార్డ్స్, మరియు ఫీల్డ్స్
AWK వేరియబుల్స్ డైనమిక్; వారు మొదట ఉపయోగించినప్పుడు వారు ఉనికిలోకి వస్తారు. వారి విలువలు ఫ్లోటింగ్-పాయింట్ సంఖ్యలు లేదా తీగలను లేదా రెండింటినీ ఉపయోగిస్తాయి, అవి ఎలా ఉపయోగించబడుతున్నాయి అనే దానిపై ఆధారపడి ఉంటాయి. AWK కూడా ఒక డైమెన్షనల్ శ్రేణులను కలిగి ఉంది; బహుళ కొలతలు కలిగిన శ్రేణులని అనుకరణ చేయవచ్చు. అనేక ముందు నిర్వచించబడిన వేరియబుల్స్ కార్యక్రమాన్ని నడుపుతూ ఉంటాయి; ఇవి అవసరమైతే వివరించబడతాయి మరియు క్రింద వివరించబడ్డాయి.
రికార్డ్స్
సాధారణంగా, రికార్డులు క్రొత్త అక్షరాలతో వేరు చేయబడతాయి. మీరు అంతర్నిర్మిత వేరియబుల్ RS కు విలువలను కేటాయించడం ద్వారా రికార్డులను ఎలా వేరు చేయాలో నియంత్రించవచ్చు. RS ఏ ఒక్క పాత్ర అయినా, ఆ పాత్ర రికార్డులను వేరు చేస్తుంది. లేకపోతే, RS అనేది సాధారణ వ్యక్తీకరణ. ఈ సాధారణ వ్యక్తీకరణకు సరిపోయే ఇన్ పుట్లోని టెక్స్ట్ రికార్డును వేరు చేస్తుంది. అయితే, అనుకూలత మోడ్లో, దాని స్ట్రింగ్ విలువ యొక్క మొదటి అక్షరం రికార్డులను వేరు చేయడానికి ఉపయోగించబడుతుంది. RS శూన్య స్ట్రింగ్కు సెట్ చేయబడితే, అప్పుడు రికార్డులు ఖాళీ పంక్తులు ద్వారా వేరు చేయబడతాయి. RS శూన్య స్ట్రింగ్కు సెట్ చేయబడినప్పుడు, క్రొత్త అక్షరం ఎల్లప్పుడూ క్షేత్ర విభజన వలె పనిచేస్తుంది, FS కలిగి ఉన్న విలువతో పాటుగా.
ఫీల్డ్స్
ప్రతి ఇన్పుట్ రికార్డు చదివినందున, Gawk ఫీల్డ్ను విభజించడానికి, ఫీల్డ్ విభజించడానికి FS వేరియబుల్ యొక్క విలువను ఉపయోగించి ఫీల్డ్లను నమోదు చేస్తుంది. FS ఒక అక్షరం అయితే, ఫీల్డ్లు ఆ పాత్ర ద్వారా వేరు చేయబడతాయి. FS శూన్య స్ట్రింగ్ అయితే, ప్రతి వ్యక్తి పాత్ర ఒక ప్రత్యేక క్షేత్రంగా మారుతుంది. లేకపోతే, FS పూర్తి రెగ్యుషన్ వ్యక్తీకరణ అని భావిస్తున్నారు. ప్రత్యేక సందర్భంలో FS ఒక స్థలం, ఖాళీలను ఖాళీలు మరియు / లేదా టాబ్లు మరియు / లేదా న్యూ లైన్ల పరుగులతో వేరు చేయబడతాయి. (కానీ చర్చ చూడండి - క్రింద, క్రింద). గమనిక: IGNORECASE యొక్క విలువ (క్రింద చూడండి) FS అనేది సాధారణ వ్యక్తీకరణ అయినప్పుడు ఖాళీలను ఎలా విభజించబడుతుందో కూడా ప్రభావితం చేస్తుంది మరియు RS అనేది సాధారణ వ్యక్తీకరణ అయినప్పుడు ఎలా నమోదు చేయబడతాయి.
FIELDWIDTHS వేరియబుల్ సంఖ్యలను ఖాళీ వేరు చేయబడిన జాబితాకు అమర్చినట్లయితే, ప్రతి క్షేత్రం వెడల్పును కలిగి ఉంటుందని భావిస్తారు, మరియు గ్యాక్ పేర్కొన్న వెడల్పులను ఉపయోగించి రికార్డును విడిపోతుంది. FS యొక్క విలువ విస్మరించబడుతుంది. FS కు క్రొత్త విలువ కేటాయించడం FIELDWIDTHS ఉపయోగంను భర్తీ చేస్తుంది మరియు డిఫాల్ట్ ప్రవర్తనను పునరుద్ధరిస్తుంది.
ఇన్పుట్ రికార్డులోని ప్రతి ఫీల్డ్ను దాని స్థానం, $ 1 , $ 2 మరియు దాని ద్వారా సూచించవచ్చు. $ 0 మొత్తం రికార్డు. పొరలు నిరంతరం ప్రస్తావించబడవు:
n = 5
$ n ముద్రణించండి
ఇన్పుట్ రికార్డులో ఐదవ ఫీల్డ్ను ముద్రిస్తుంది.
వేరియబుల్ NF ఇన్పుట్ రికార్డులోని మొత్తం సంఖ్య ఫీల్డ్లకు సెట్ చేయబడింది.
ఉనికిలో లేని రంగాలకు సూచనలు (అనగా $ NF తర్వాత ఖాళీలను) శూన్య- తీగను ఉత్పత్తి చేస్తుంది. అయినప్పటికీ, ఉనికిలో లేని క్షేత్రము (ఉదా., $ 1 (NF + 2) = 5 ) NF యొక్క విలువను పెంచుతుంది, శూన్య స్ట్రింగ్ వారి విలువగా ఎటువంటి జోక్యం చేసుకునే రంగాలను సృష్టిస్తుంది మరియు పునఃప్రారంభం చేయడానికి $ 0 విలువను కలిగిస్తుంది OFS విలువతో ఖాళీలను వేరు చేయబడతాయి. ప్రతికూల సంఖ్యా సంఖ్యలకు సూచనలు తీవ్రమైన దోషాన్ని కలిగిస్తాయి. NF ను తగ్గించడం వలన కొత్త విలువను కోల్పోయిన ఖాళీలను విలువ కోల్పోతుంది, మరియు తిరిగి చెల్లించాల్సిన $ 0 విలువ, ఖాళీలను OFS విలువతో వేరు చేయబడతాయి.
ఇప్పటికే ఉన్న ఫీల్డ్కు విలువను కేటాయించడం మొత్తం రికార్డును $ 0 సూచించినప్పుడు పునర్నిర్మించటానికి కారణమవుతుంది. అదేవిధంగా, $ 0 కు విలువను కేటాయించడం రికార్డును రీప్లేట్ చేయడానికి కారణమవుతుంది, ఇది ఖాళీలను కోసం కొత్త విలువలను సృష్టిస్తుంది.
అంతర్నిర్మిత వేరియబుల్స్
Gawk యొక్క అంతర్నిర్మిత వేరియబుల్స్:
argc
కమాండ్ లైన్ ఆర్గ్యుమెంట్స్ సంఖ్య ( Gawk , లేదా ప్రోగ్రామ్ మూలం ఎంపికలను కలిగి లేదు).
ARGIND
ప్రస్తుత ఫైల్ యొక్క ARGV లోని ఇండెక్స్ ప్రాసెస్ చేయబడుతోంది.
argv
కమాండ్ లైన్ వాదనలు అర్రే. శ్రేణి 0 నుండి ARGC కు సూచిక చేయబడుతుంది - 1. ARGV యొక్క విషయాలను డైనమిక్గా మారుస్తుంది డేటా కోసం ఉపయోగించే ఫైళ్ళను నియంత్రించవచ్చు.
BINMODE
POSIX యేతర వ్యవస్థలలో, అన్ని ఫైల్ I / O లకు `` బైనరీ '' మోడ్ను ఉపయోగించడాన్ని నిర్దేశిస్తుంది. 1, 2, లేదా 3 యొక్క సంఖ్యా విలువలు ఇన్పుట్ ఫైల్స్, అవుట్పుట్ ఫైల్స్ లేదా అన్ని ఫైళ్ళను వరుసగా పేర్కొనండి, ద్వియాంశ I / O ను ఉపయోగించాలి. "R" , లేదా "w" యొక్క స్ట్రింగ్ విలువలు ఆ ఇన్పుట్ ఫైళ్ళను లేదా అవుట్పుట్ ఫైళ్లను వరుసగా పేర్కొంటాయి, బైనరీ I / O ను ఉపయోగించాలి. "Rw" లేదా "wr" యొక్క స్ట్రింగ్ విలువలు అన్ని ఫైళ్ళు బైనరీ I / O ను ఉపయోగించవచ్చని తెలుపుతుంది. ఏదైనా ఇతర స్ట్రింగ్ విలువ "rw" గా పరిగణించబడుతుంది, కానీ హెచ్చరిక సందేశాన్ని సృష్టిస్తుంది.
CONVFMT
డిఫాల్ట్గా సంఖ్యలు " మార్పిడి .6g" కోసం మార్పిడి ఫార్మాట్.
ENVIRON
ప్రస్తుత వాతావరణంలో విలువలను కలిగి ఉన్న శ్రేణి. ఈ శ్రేణి ఎన్విరాన్మెంట్ వేరియబుల్స్ ద్వారా సూచించబడుతుంది, ప్రతి మూలకం వేరియబుల్ విలువ (ఉదా., ENVIRON ["HOME"] / home / ఆర్నోల్డ్ కావచ్చు). ఈ శ్రేణిని మార్చడం కార్యక్రమాల ద్వారా కనిపించే వాతావరణాన్ని ప్రభావితం చేయదు, ఇది మళ్లింపు లేదా వ్యవస్థ () ఫంక్షన్ ద్వారా స్పాన్ చేయబడుతుంది.
ERRNO
Getline కోసం రీడ్ రీతిలో , getline కోసం చదివేటప్పుడు , లేదా దగ్గరి () సమయంలో ఒక వ్యవస్థ దోషం సంభవిస్తే, ERRNO లోపం వివరిస్తున్న స్ట్రింగ్ను కలిగి ఉంటుంది. విలువ ఆంగ్ల కాని భాషలలో అనువాదంకు లోబడి ఉంటుంది.
FIELDWIDTHS
ఫీల్డ్-సైడ్ల యొక్క తెల్లని-ఖాళీ వేరు జాబితా. సెట్ చేసినప్పుడు, Gawk FS వేరియబుల్ను క్షేత్ర విభాజకునిగా ఉపయోగించకుండా, ఇన్పుట్ను స్థిర వెడల్పు యొక్క రంగాలుగా పిలుస్తుంది.
FILENAME
ప్రస్తుత ఇన్పుట్ ఫైల్ పేరు. కమాండ్ లైన్లో ఏ ఫైల్లు పేర్కొనకపోతే, FILENAME యొక్క విలువ `` - ''. ఏది ఏమైనప్పటికీ, FILENAME BEGIN బ్లాక్ లోపల ( నిర్వచించబడకపోతే ).
FNR
ప్రస్తుత ఇన్పుట్ ఫైల్లో ఇన్పుట్ రికార్డ్ సంఖ్య.
FS
అప్రమేయంగా ఇన్పుట్ ఫీల్డ్ విభజన, స్పేస్. పైన ఉన్న ఫీల్డ్లను చూడండి.
IGNORECASE
అన్ని సాధారణ వ్యక్తీకరణ మరియు స్ట్రింగ్ కార్యకలాపాల కేస్-సెన్సిటివిటీని నియంత్రిస్తుంది. ఒకవేళ IGNORECASE సున్నా-కాని విలువను కలిగి ఉన్నట్లయితే, FS తో ఫోర్స్ విభజన, RS తో వేరుచేయబడిన రికార్డు, ~ మరియు ! ~ , మరియు gensub () , gsub () , ఇండెక్స్ () , వరుస () , స్ప్లిట్ () , మరియు ఉప () అంతర్నిర్మిత ఫంక్షన్లు సాధారణ వ్యక్తీకరణ చర్యలను చేసేటప్పుడు అన్ని విస్మరణ కేసు. గమనిక: అర్రే సబ్ స్క్రిప్టింగ్ ప్రభావితం కాదు, లేదా asort () ఫంక్షన్.
అందువలన, IGNORECASE సున్నాకు సమానం కాదు, / aB / అన్ని తీగలను "ab" , "aB" , "AB" మరియు "AB" లకు సరిపోతుంది . అన్ని AWK వేరియబుల్స్ మాదిరిగా, IGNORECASE యొక్క ప్రాధమిక విలువ సున్నా, కాబట్టి అన్ని సాధారణ వ్యక్తీకరణ మరియు స్ట్రింగ్ కార్యకలాపాలు సాధారణంగా కేస్ సెన్సిటివ్. Unix లో, కేసును విస్మరిస్తున్నప్పుడు పూర్తి ISO 8859-1 లాటిన్-1 అక్షర సమితిని ఉపయోగించారు.
లింట్
ఒక AWK కార్యక్రమంలో --lint ఎంపిక యొక్క డైనమిక్ నియంత్రణను అందిస్తుంది. నిజమైనప్పుడు, గ్యాక్ ముద్రలు మెత్తటి హెచ్చరికలు. తప్పుడు, అది కాదు. స్ట్రింగ్ విలువ "ప్రాణాంతకం" కేటాయించినప్పుడు, మెత్తటి హెచ్చరికలు ప్రాణాంతక లోపాలుగా మారాయి, సరిగ్గా - lint = ప్రాణాంతకం . ఇతర నిజమైన విలువ కేవలం హెచ్చరికలను ముద్రిస్తుంది.
NF
ప్రస్తుత ఇన్పుట్ రికార్డులోని ఫీల్డ్ల సంఖ్య.
ఎన్ ఆర్
ఇప్పటివరకు కనిపించే మొత్తం ఇన్పుట్ రికార్డుల సంఖ్య.
OFMT
సంఖ్యల కోసం అవుట్పుట్ ఫార్మాట్, "% .6g" , అప్రమేయంగా.
OFS
అవుట్పుట్ ఫీల్డ్ విభజించడానికి, అప్రమేయంగా ఖాళీ.
ఇతరులు
అవుట్పుట్ రికార్డు విభజన, డిఫాల్ట్గా క్రొత్త లైన్.
PROCINFO
ఈ శ్రేణి యొక్క మూలకాలు నడుస్తున్న AWK ప్రోగ్రామ్ గురించి సమాచారాన్ని ప్రాప్తి చేస్తాయి. కొన్ని వ్యవస్థలలో, ఎరేలో మూలకాలు ఉండవచ్చు, "group1" "group n " ద్వారా కొన్ని n కు , ఇది ప్రక్రియ యొక్క అనుబంధ సమూహాల సంఖ్య. ఈ అంశాల కోసం పరీక్షించడానికి ఆపరేటర్లో ఉపయోగించండి. కింది అంశాలు అందుబాటులో ఉన్నాయి:
PROCINFO [ "egid"]
getegid (2) సిస్టమ్ కాల్ విలువ.
PROCINFO [ "euid"]
geteuid (2) సిస్టమ్ కాల్ విలువ.
PROCINFO [ "FS"]
"FS" FS తో విభజన చేస్తే, FIELDWIDTHS తో క్షేత్ర విభజన ఉంటే "FIELDWIDTHS" అమలులోకి వస్తుంది.
PROCINFO [ "gid"]
గెజిడ్ (2) సిస్టమ్ కాల్ యొక్క విలువ.
PROCINFO [ "pgrpid"]
ప్రస్తుత ప్రక్రియ యొక్క ప్రాసెస్ సమూహం ID.
PROCINFO [ "పిఐడి"]
ప్రస్తుత ప్రక్రియ యొక్క ప్రక్రియ ID.
PROCINFO [ "PPID"]
ప్రస్తుత ప్రాసెస్ యొక్క మాతృ ప్రక్రియ ID.
PROCINFO [ "UID"]
getuid (2) సిస్టమ్ కాల్ యొక్క విలువ.
RS
ఇన్పుట్ రికార్డు విభజన, డిఫాల్ట్గా క్రొత్త లైన్.
RT
రికార్డు టెర్మినేటర్. Gawk RS ద్వారా పేర్కొన్న పాత్ర లేదా సాధారణ వ్యక్తీకరణకు సరిపోలే ఇన్పుట్ టెక్స్ట్కు RT ని సెట్ చేస్తుంది.
RSTART
మ్యాచ్ () తో సరిపోయే మొదటి అక్షరం యొక్క సూచిక; 0 సరిపోలడం లేదు. (ఇది అక్షరాల సూచికలు ఒకటి ప్రారంభమవుతుంది అని సూచిస్తుంది.)
RLENGTH
మ్యాచ్ () తో సరిపోయే స్ట్రింగ్ యొక్క పొడవు; -1 సరిపోలడం లేదు.
SUBSEP
డిఫాల్ట్గా "\ 034" , అర్రే అంశాలలో బహుళ సబ్స్క్రిప్ట్స్ వేరు చేయడానికి ఉపయోగించే పాత్ర.
textdomain
AWK ప్రోగ్రామ్ యొక్క టెక్స్ట్ డొమైన్; ప్రోగ్రామ్ యొక్క తీగలకు స్థానికీకరించిన అనువాదాలను కనుగొనడానికి ఉపయోగిస్తారు.
వ్యూహాలను
శ్రేణుల చతురస్ర బ్రాకెట్స్ ( [ మరియు ] ) మధ్య వ్యక్తీకరణతో సబ్ స్క్రైక్ చెయ్యబడతాయి. వ్యక్తీకరణ వ్యక్తీకరణ జాబితా ( expr , expr ...) అయితే, శ్రేణి చందా అనేది SUBSEP వేరియబుల్ యొక్క విలువతో వేరుచేసిన ప్రతి వ్యక్తీకరణ యొక్క (స్ట్రింగ్) విలువ యొక్క అనుసంధానంతో కూడిన స్ట్రింగ్. ఈ సౌకర్యం గుణకార పరిమాణాల శ్రేణులను అనుకరించేందుకు ఉపయోగిస్తారు. ఉదాహరణకి:
i = "A"; j = "B"; k = "C"
x [i, j, k] = "హలో, ప్రపంచ \ n"
స్ట్రింగ్ "A \ 034B \ 034C" ద్వారా సూచిక చేయబడ్డ శ్రేణి x యొక్క మూలకానికి "హలో, ప్రపంచ \ n" స్ట్రింగ్ను సూచిస్తుంది . AWK లోని అన్ని శ్రేణులు సహసంబంధమైనవి, అంటే స్ట్రింగ్ విలువలతో సూచించబడతాయి.
ఒక ప్రత్యేకమైన ఆపరేటర్ ఒక ప్రత్యేకమైన విలువను కలిగి ఉన్న ఒక సూచిక కలిగి ఉన్నట్లయితే ఉంటే, లేదా ఒకవేళ ప్రకటనలో ఒక ప్రత్యేక ఆపరేటర్ ఉపయోగించవచ్చు.
ఉంటే (శ్రేణి లో విలువ) ప్రింట్ అర్రే [val]అర్రే బహుళ సభ్యత్వాలను కలిగి ఉంటే, శ్రేణిలో (i, j) ఉపయోగించండి.
నిర్మాణంలో లూప్ కోసం కూడా వ్యూహంలోని అన్ని అంశాలపై iterate చేయడానికి కూడా ఉపయోగించవచ్చు.
తొలగింపు ప్రకటనని ఉపయోగించి ఒక మూలకం నుండి ఒక మూలకం తొలగించబడుతుంది. తొలగింపు స్టేట్మెంట్ సక్రియం యొక్క మొత్తం కంటెంట్లను కూడా తొలగించడానికి ఉపయోగించబడుతుంది, కేవలం ఒక సబ్ స్క్రిప్ట్ లేకుండా శ్రేణి పేరును పేర్కొనడం ద్వారా.
వేరియబుల్ టైప్ మరియు కన్వర్షన్
వేరియబుల్స్ మరియు ఫీల్డ్లు (ఫ్లోటింగ్ పాయింట్) సంఖ్యలు, లేదా స్ట్రింగ్స్ లేదా రెండూ కావచ్చు. వేరియబుల్ యొక్క విలువ దాని సందర్భంపై ఆధారపడి ఎలా వ్యాఖ్యానించబడుతుంది. సంఖ్యాత్మక వ్యక్తీకరణలో ఉపయోగించినట్లయితే, ఇది ఒక సంఖ్యగా పరిగణించబడుతుంది, స్ట్రింగ్గా ఉపయోగించినట్లయితే ఇది స్ట్రింగ్గా పరిగణించబడుతుంది.
ఒక సంఖ్యగా పరిగణించాల్సిన వేరియబుల్ను బలపరచడానికి, దానికి 0 ని జోడించండి; దీనిని స్ట్రింగ్గా పరిగణించమని బలవంతం చేస్తే, అది శూన్య స్ట్రింగ్తో కలుపుకొని ఉంటుంది.
ఒక స్ట్రింగ్ ఒక సంఖ్యగా మార్చబడినప్పుడు, స్ట్రాటాడ్ (3) ను ఉపయోగించి మార్పిడిని సాధించవచ్చు. ఒక సంఖ్యను స్ట్రింగ్కు CONVFMT విలువను స్ప్రింట్ (3) కోసం ఫార్మాట్ స్ట్రింగ్గా ఉపయోగించడం ద్వారా వాచ్యంగా వేరియబుల్ యొక్క సంఖ్యా విలువతో వాడబడుతుంది . అయినప్పటికీ, AWK లోని అన్ని సంఖ్యలు ఫ్లోటింగ్ పాయింట్ అయినప్పటికీ, సమగ్ర విలువలు ఎల్లప్పుడూ పూర్ణాంకాలగా మార్చబడతాయి. అందువలన, ఇచ్చిన
CONVFMT = "% 2.2f" a = 12 b = a "వేరియబుల్ b "12" యొక్క స్ట్రింగ్ విలువ మరియు "12.00" కాదు .
గాక్ ఈ విధంగా పోలికలను నిర్వహిస్తుంది: రెండు వేరియబుల్స్ సంఖ్యా ఉంటే, అవి సంఖ్యాపరంగా సరిపోతాయి . ఒక విలువ సంఖ్యా మరియు మరొకటి స్ట్రింగ్ విలువ ఉంటే అది "సంఖ్యా స్ట్రింగ్", అప్పుడు పోలికలు సంఖ్యాపరంగా జరుగుతాయి. లేకపోతే, సంఖ్యా విలువ స్ట్రింగ్కు మార్చబడుతుంది మరియు స్ట్రింగ్ పోలిక నిర్వహిస్తారు. తీగలను రెండు తీగలను, వాస్తవానికి, పోల్చారు. POSIX ప్రమాణం ప్రతిచోటా, "స్ట్రింగ్ స్టాండింగ్" యొక్క భావనను, స్ట్రింగ్ స్థిరాంకాలకు కూడా వర్తిస్తుంది. అయితే, ఇది స్పష్టంగా తప్పు, మరియు గాక్ దీన్ని చేయదు. (అదృష్టవశాత్తూ, ఈ ప్రామాణిక తదుపరి వెర్షన్ లో పరిష్కరించబడింది.)
"57" వంటి స్ట్రింగ్ స్థిరాంకాలు, సంఖ్యా తీగలను కాదు, అవి స్ట్రింగ్ స్థిరాంకాలు. "సంఖ్యా స్ట్రింగ్" యొక్క ఆలోచన ఫీల్డ్, ఇన్లైన్ ఇన్పుట్, FILENAME , ARGV ఎలిమెంట్స్, ENVIRON ఎలిమెంట్స్ మరియు స్మిల్ () ద్వారా సృష్టించబడిన శ్రేణి యొక్క అంశాలకు మాత్రమే వర్తిస్తుంది. ప్రాథమిక ఆలోచన ఏమిటంటే వినియోగదారు ఇన్ పుట్ , మరియు యూజర్ ఇన్పుట్, సంఖ్యా చూస్తున్నది, ఆ విధంగా చికిత్స చేయాలి.
"" "(" శూన్య, లేదా ఖాళీ, స్ట్రింగ్) "" విలువలేని "" వేరియబుల్స్ సంఖ్యా విలువ 0 మరియు స్ట్రింగ్ విలువను కలిగి ఉంటాయి.
ఆక్టాల్ మరియు హెక్సాడెసిమల్ స్థిరాంకాలు
Gawk యొక్క వర్షన్ 3.1 తో ప్రారంభించి , మీరు మీ AWK ప్రోగ్రామ్ సోర్స్ కోడ్లో సి-స్టైల్ అష్టల్ మరియు హెక్సాడెసిమల్ స్థిరాంకాలను ఉపయోగించవచ్చు. ఉదాహరణకు, అష్టల్ విలువ 011 దశాంశ 9 కు సమానంగా ఉంటుంది మరియు హెక్సాడెసిమల్ విలువ 0x11 అనేది దశాంశ 17 కు సమానంగా ఉంటుంది.
స్ట్రింగ్ స్థిరాంకాలు
AWK లోని స్ట్రింగ్ స్థిరాంకాలు డబుల్ కోట్స్ ( " ) మధ్య ఉండే అక్షరాల వరుసలు .విస్తరణలలో, కొన్ని ఎస్కేప్ సన్నివేశాలు C. లో ఉంటాయి, అవి:
\\
ఒక సాహిత్య బాక్ స్లాష్.
\ ఒక
"హెచ్చరిక" పాత్ర; సాధారణంగా ASCII BEL పాత్ర.
\ b
బ్యాక్స్పేస్ను.
\ f
రూపం-తిండికి.
\ n
కొత్త వాక్యం.
\ r
క్యారేజ్ రిటర్న్.
\ t
సమాంతర టాబ్.
\ v
నిలువు టాబ్.
\ x హెక్స్ అంకెలు
\ X తరువాత హెక్సాడెసిమల్ అంకెలు యొక్క స్ట్రింగ్ ద్వారా ప్రాతినిధ్యం వహిస్తున్న పాత్ర. ANSIC లాగా, అన్ని క్రింది హెక్సాడెసిమల్ అంకెలు ఎస్కేప్ సీక్వెన్స్లో భాగముగా పరిగణించబడతాయి. (ఈ లక్షణం మాకు కమిటీ ద్వారా భాషా రూపకల్పన గురించి ఏదో చెప్పాలి.) ఉదా, "\ x1B" అనేది ASCIIESC (తప్పించుకోవటానికి) పాత్ర.
\ ddd
అష్టాంశ సంఖ్యల 1-, 2-, లేదా 3 అంకెల క్రమంలో ప్రాతినిధ్యం వహిస్తున్న పాత్ర. ఉదా, "\ 033" అనేది ASCII ESC (తప్పించుకోవటానికి) పాత్ర.
\ c
సాహిత్య పాత్ర c .
నిరంతర సాధారణ వ్యక్తీకరణలలో (ఉదా., / [\ T \ f \ n \ r \ v] / తెల్లని పాత్రల అక్షరాలతో కూడా ఎస్కేప్ సన్నివేశాలు ఉపయోగించబడతాయి.
అనుకూల మోడ్లో, రెగ్యులర్ వ్యక్తీకరణ స్థిరాంకాలు ఉపయోగించినప్పుడు అష్టల్ మరియు హెక్సాడెసిమల్ ఎస్కేప్ సన్నివేశాలు ప్రాతినిధ్యం వహిస్తున్న అక్షరాలను వాచ్యంగా పరిగణిస్తారు. అందువలన, / a \ 52b / / a \ * b / కు సమానంగా ఉంటుంది.
పద్ధతులు మరియు చర్యలు
AWK అనేది లైన్-ఆధారిత భాష. నమూనా మొదట, తరువాత చర్య వస్తుంది. యాక్షన్ ప్రకటనలు { మరియు } లో మూసివేయబడతాయి. గాని నమూనా లేదు, లేదా చర్య తప్పిపోవచ్చు, కానీ, కోర్సు యొక్క, రెండూ కాదు. నమూనా లేదు ఉంటే, ప్రతి ఇన్పుట్ రికార్డు కోసం చర్య అమలు అవుతుంది. తప్పిపోయిన చర్యకు సమానం
{print}
ఇది మొత్తం రికార్డును ముద్రిస్తుంది.
వ్యాఖ్యలు `` # '' అక్షరంతో ప్రారంభమవుతాయి, మరియు చివరికి చివరి వరకు కొనసాగండి. వాక్యాలను వేరు చేయడానికి ఖాళీ పంక్తులు ఉపయోగించబడవచ్చు. సాధారణంగా, ఒక ప్రకటన ఒక క్రొత్త లైన్తో ముగుస్తుంది, అయినప్పటికీ, అది ``, '', మరియు, , : &&& , లేదా || . లేదా అంతకుముందు లైన్స్ ముగిసిన లైన్లు కూడా ఈ క్రింది లైన్ పై స్వయంచాలకంగా కొనసాగుతాయి. ఇతర సందర్భాల్లో, ఒక లైన్ను 'ఒక ముగింపుతో కొనసాగించవచ్చు, ఈ సందర్భంలో క్రొత్త లైన్ నిర్లక్ష్యం చేయబడుతుంది.
బహుళ వాంగ్మూలాలు ఒక వరుసలో వాటిని వేరు చేయడం ద్వారా ``; ఇది నమూనా-చర్య జత (సాధారణ కేసు) యొక్క చర్య భాగంగా మరియు నమూనా-చర్యల ప్రకటనలకు రెండు ప్రకటనలకు వర్తిస్తుంది.
పద్ధతులు
AWK నమూనాలు క్రింది వాటిలో ఒకటి కావచ్చు:
BEGIN END / రెగ్యులర్ ఎక్స్ప్రెషన్ / రిలేషనల్ ఎక్స్ప్రెషన్ మాదిరి && నమూనా నమూనా || నమూనా నమూనా ? నమూనా : నమూనా ( నమూనా ) ! నమూనా నమూనా 1 , నమూనా 2BEGIN మరియు END రెండు ఇన్పుట్లకు వ్యతిరేకంగా పరీక్షించని నమూనాల ప్రత్యేక రకాలు. అన్ని BEGIN నమూనాల చర్య భాగాలు ఒకే BEGIN బ్లాక్లో అన్ని ప్రకటనలు రాసినట్లుగా విలీనం చేయబడ్డాయి. ఇన్పుట్ యొక్క ఏదైనా చదివే ముందు అవి అమలు చేయబడతాయి. అదేవిధంగా, అన్ని END బ్లాక్స్ విలీనం, మరియు అన్ని ఇన్పుట్ అయిపోయినప్పుడు (లేదా నిష్క్రమణ ప్రకటన అమలు చేయబడినప్పుడు) అమలు అవుతుంది. BEGIN మరియు END నమూనాలను నమూనా వ్యక్తీకరణల్లో ఇతర నమూనాలతో కలిపి సాధ్యం కాదు. BEGIN మరియు END నమూనాల చర్య భాగాలు తప్పిపోవు.
/ రెగ్యులర్ వ్యక్తీకరణ / నమూనాల కోసం, సంబంధిత వ్యక్తీకరణకు సరిపోలే ప్రతి ఇన్పుట్ రికార్డుకు సంబంధిత ప్రకటన అమలు చేయబడుతుంది. రెగ్యులర్ ఎక్స్ప్రెషన్స్ ఇవేగ్రేప్ (1) లో ఉన్న వాటికి సమానంగా ఉంటాయి మరియు దిగువ సంగ్రహించబడుతుంది.
ఒక సంబంధిత వ్యక్తీకరణ చర్యలలోని విభాగంలోని దిగువ నిర్వచించిన ఆపరేటర్లను ఉపయోగించవచ్చు. ఇవి సాధారణంగా కొన్ని రంగాలు కొన్ని సాధారణ వ్యక్తీకరణలతో సరిపోవాలా లేదో పరీక్షిస్తాయి.
&& , || , మరియు ! ఆపరేటర్లు తార్కిక మరియు తార్కిక OR తార్కిక NOT, వరుసగా, C. లో వలె వారు చిన్న-సర్క్యూట్ మూల్యాంకనం చేస్తారు, C లో వలె మరియు మరిన్ని పురాతన నమూనా వ్యక్తీకరణలను కలపడానికి ఉపయోగిస్తారు. చాలా భాషల్లో వలె, మూల్యాంకనం క్రమంలో మార్చడానికి కుండలీకరణాలు వాడవచ్చు.
ది : ఆపరేటర్లు C. లో అదే ఆపరేటర్ లాగానే మొదటి నమూనా నిజమైతే, పరీక్ష కోసం ఉపయోగించిన నమూనా రెండవ నమూనా, లేకుంటే అది మూడోది. రెండవ మరియు మూడవ నమూనాలలో ఒకటి మాత్రమే పరిశీలించబడుతుంది.
వ్యక్తీకరణ యొక్క నమూనా 1, నమూనా 2 రూపం శ్రేణి నమూనా అంటారు. ఇది నమూనా 1 తో సరిపోయే రికార్డుతో అన్ని ఇన్పుట్ రికార్డులకు సరిపోతుంది, మరియు నమూనా 2 తో సరిపోయే రికార్డు వరకు కొనసాగుతుంది. ఇది నమూనా వ్యక్తీకరణ ఏ ఇతర విధమైన తో మిళితం లేదు.
రెగ్యులర్ ఎక్స్ప్రెషన్స్
రెగ్యులర్ వ్యక్తీకరణలు ఉదా . ఈ కింది విధంగా అక్షరాలు ఉంటాయి:
సి
కాని మెటాచార్క్కర్కు సరిపోతుంది c .
\ సి
అక్షర పాత్రకు సరిపోలేది c .
.
క్రొత్త అక్షరంతో సహా ఏదైనా అక్షరానికి సరిపోతుంది.
^
స్ట్రింగ్ యొక్క ప్రారంభంలో సరిపోతుంది.
$
స్ట్రింగ్ ముగింపుతో సరిపోతుంది.
[ abc ... ]
అక్షర జాబితా, అక్షరాలు ABC ఏ అక్షరాలతో సరిపోలాలి ....
[^ abc ... ]
నిరాకరించిన పాత్ర జాబితా, abc మినహా ఏదైనా అక్షరానికి సరిపోతుంది ....
r1 | R2
ప్రత్యామ్నాయం: సరిపోలుస్తుంది r1 లేదా r2 .
r1r2
అనుసంధానం: మ్యాచ్ r1 , ఆపై r2 .
r +
ఒకటి లేదా అంతకంటే ఎక్కువ R యొక్కది.
r *
సున్నా లేదా అంతకంటే ఎక్కువ R యొక్క సరిపోలిక.
r ?
సున్నా లేదా ఒక r యొక్కది.
( r )
సమూహం: మ్యాచ్లు r .
r { n }
r { n ,}
r { n , m } జంట కలుపులు లోపల ఒకటి లేదా రెండు సంఖ్యలు విరామం వ్యక్తీకరణని సూచిస్తాయి. జంట కలుపుల్లో ఒక సంఖ్య ఉంటే, మునుపటి రెగ్యుషన్ ఎక్స్ప్రెషన్ n సార్లు పునరావృతం అవుతుంది. కామాతో వేరు చేయబడిన రెండు సంఖ్యలు ఉంటే, r సార్లు n సార్లు పునరావృతం అవుతుంది. ఒక సంఖ్య కామాతో తరువాత ఉంటే, అప్పుడు n కనీసం n సార్లు పునరావృతమవుతుంది.
గాని --posix లేదా --re-interval కమాండ్ లైన్ లో తెలుపబడితే మాత్రమే ఇంటర్వల్ వ్యక్తీకరణలు అందుబాటులో ఉంటాయి.
\ y
ఖాళీ స్ట్రింగ్ను ఒక పదం యొక్క ప్రారంభంలో లేదా ముగింపులో సరిపోతుంది.
\ B
పదం లోపల ఖాళీ స్ట్రింగ్తో సరిపోతుంది.
\ <
పదం యొక్క ప్రారంభంలో ఖాళీ స్ట్రింగ్తో సరిపోతుంది.
\>
పదం యొక్క చివరిలో ఖాళీ స్ట్రింగ్తో సరిపోతుంది.
\ w
ఏదైనా పద-పాత్ర పాత్ర (అక్షరం, అంకె, లేదా అండర్ స్కోర్) సరిపోతుంది.
\ W
వర్డ్-రాజ్యాంగ కాదు ఏ పాత్ర సరిపోతుంది.
\ `
ఒక బఫర్ (స్ట్రింగ్) ప్రారంభంలో ఖాళీ స్ట్రింగ్కు సరిపోతుంది.
\ '
బఫర్ చివరిలో ఖాళీ స్ట్రింగ్తో సరిపోతుంది.
స్ట్రింగ్ స్థిరాంతాలలో చెల్లుబాటు అయ్యే ఎస్కేప్ సన్నివేశాలు (క్రింద చూడండి) కూడా సాధారణ వ్యక్తీకరణల్లో చెల్లుతాయి.
అక్షర తరగతులు POSIX స్టాండర్డ్ లో ప్రవేశపెట్టిన కొత్త విశేషణం. ఒక ప్రత్యేక లక్షణం ఒక ప్రత్యేక లక్షణం కలిగిన అక్షరాల జాబితాలను వివరిస్తూ, ప్రత్యేక అక్షరాలను సూచిస్తుంది, అయితే అసలు అక్షరాలు తమ దేశానికి దేశానికి మరియు / లేదా అక్షర సమితికి సమితి నుండి సెట్ చేయగలవు. ఉదాహరణకు, USA లో మరియు ఫ్రాన్సులో అక్షరమాల పాత్ర ఏమిటో భిన్నంగా ఉంటుంది.
ఒక అక్షర తరగతి అక్షరాల లోపల ఒక సాధారణ వ్యక్తీకరణలో మాత్రమే వర్తిస్తుంది. అక్షర తరగతులు [: , తరగతిని సూచిస్తున్న కీలకపదం, మరియు :] . POSIX ప్రమాణంచే నిర్వచించబడిన పాత్ర తరగతులు:
[: alnum:]
ఆల్ఫాన్యూమరిక్ అక్షరాలను.
[: ఆల్ఫా:]
వర్ణమాల అక్షరాలు.
[: ఖాళీ:]
స్పేస్ లేదా టాబ్ అక్షరాలు.
[: cntrl:]
నియంత్రణ అక్షరాలు.
[: అంకెల:]
సంఖ్యా అక్షరాలు.
[: గ్రాఫు]
ముద్రణ మరియు కనిపించే రెండు అక్షరాలు. (ఒక ప్రదేశం ముద్రించదగినది, కానీ కనిపించదు, అయితే రెండూ రెండూ.)
[: తక్కువ:]
దిగువ-కేస్ వర్ణమాల అక్షరాలు.
[: ముద్రణ:]
ముద్రణ అక్షరాలు (నియంత్రణ అక్షరాలు లేని అక్షరాలు.)
[: punct:]
విరామ అక్షరాలు (అక్షరాలు, అంకెలు, నియంత్రణ అక్షరాలు లేదా ఖాళీ అక్షరాలు లేని అక్షరాలు).
[:స్థలం:]
స్పేస్ అక్షరాలు (స్పేస్, ట్యాబ్, మరియు ఫార్మ్ ఫీడ్ వంటివి, కొన్ని పేరు పెట్టడం).
[: ఎగువ:]
ఉన్నత-కేస్ వర్ణమాల అక్షరాలు.
[: xdigit:]
హెక్సాడెసిమల్ అంకెలు ఉన్న అక్షరాలు.
ఉదాహరణకు, POSIX స్టాండర్డ్ ముందు, ఆల్ఫాన్యూమరిక్ అక్షరాలను సరిపోల్చడానికి, మీరు / [A-Za-z0-9] / వ్రాయాలి . మీ అక్షరం సెట్లో ఇతర వర్ణమాల అక్షరాలు ఉంటే, ఇది వాటిని సరిపోలలేదు మరియు ASCII నుండి మీ పాత్ర సెట్ భిన్నంగా ఉంటే, ఇది ASCII ఆల్ఫాన్యూమరిక్ అక్షరాలతో సరిపోలలేదు. POSIX అక్షరాల తరగతులతో, మీరు / [[: alnum:]] / వ్రాయవచ్చు మరియు ఇది మీ అక్షర సమితిలో అక్షర మరియు సంఖ్యా అక్షరాలకు సరిపోతుంది.
రెండు అదనపు ప్రత్యేక సీక్వెన్సులు పాత్ర జాబితాలలో కనిపిస్తాయి. ఇవి ASCII యేతర అక్షర సమితులకు వర్తిస్తాయి, వీటిలో సింగిల్ సింబల్స్ ( కాలేటింగ్ ఎలిమెంట్స్ అని పిలువబడేవి) ఉంటాయి, ఇవి ఒకటి కంటే ఎక్కువ అక్షరాలతో ఉంటాయి, అలాగే అనేక అక్షరాలు సమాంతరంగా లేదా క్రమబద్ధీకరించడానికి ఉద్దేశించినవి. (ఉదా, ఫ్రెంచ్లో, ఒక సాదా `` ఇ '' మరియు సమాధి-ఉపసంహరించిన e` సమానమైనవి.)
పరస్పర చిహ్నాలు
ఒక పలకల సంకేతం అనేది ఒక బహుళ వర్ణాల పట్టీ మూలకం . మరియు .] . ఉదాహరణకు, ch అనేది ఒక పలకల మూలకం అయితే, [[.]] అనేది ఒక సాధారణ వ్యక్తీకరణ, ఇది ఈ పలక కారకంతో సరిపోలుతుంది, అయితే [ch] అనేది సి లేదా h కు సరిపోలే ఒక సాధారణ వ్యక్తీకరణ.
సమానత క్లాసులు
సమానం తరగతి అనేది సమానమైన అక్షరాల జాబితాకు ఒక లొకేల్-నిర్దిష్ట పేరు. పేరు [= మరియు =] లో జత చేయబడింది. ఉదాహరణకు, ఈ పేరు e అన్ని, "e", "e", "" మరియు "` e` లను ప్రతిబింబించడానికి వాడవచ్చు. '' ఈ సందర్భంలో, [[= e =]] అనేది ఒక సాధారణ వ్యక్తీకరణ e , e లేదా e` కు సరిపోలుతుంది .
ఈ లక్షణాలు ఆంగ్ల భాష మాట్లాడే భాషల్లో చాలా విలువైనవి. రెగ్యులర్ వ్యక్తీకరణ పోలిక కోసం Gawk ఉపయోగించే లైబ్రరీ విధులు ప్రస్తుతం POSIX అక్షరాల తరగతులను మాత్రమే గుర్తిస్తాయి; వారు గుర్తులు లేదా సమానమైన తరగతులను గుర్తిస్తారు.
\ Y , \ B , \ < , \> , \ w , \ W , \ ` , మరియు \ ' ఆపరేటర్లు gawk కు నిర్దిష్టమైనవి; GNU రెప్రెషన్ లైబ్రరీలలో సౌకర్యాలపై ఆధారపడినవి.
వివిధ కమాండ్ లైన్ ఐచ్చికాలు, సాధారణ వ్యక్తీకరణలలో అక్షరాలను ఎలా అర్ధం చేస్తాయో నియంత్రిస్తాయి.
ఎంపికలు లేవు
డిఫాల్ట్ కేసులో, పైన పేర్కొన్న POSIX రెగ్యులర్ వ్యక్తీకరణలు మరియు GNU రెగ్యులర్ ఎక్స్ప్రెషన్ ఆపరేటర్ల అన్ని సౌకర్యాలను Gawk అందిస్తుంది. అయితే, విరామం వ్యక్తీకరణలకు మద్దతు లేదు.
--posix
POSIX రెగ్యులర్ వ్యక్తీకరణలకు మాత్రమే మద్దతు ఉంది, GNU ఆపరేటర్లు ప్రత్యేకమైనవి కాదు. (ఉదా, \ w w అక్షరాలతో సరిపోలితే). ఇంటర్వల్ వ్యక్తీకరణలు అనుమతించబడతాయి.
--సంప్రదాయకమైన
సాంప్రదాయ యునిక్స్ రెగ్ రెగ్యుప్రెషన్ ఎక్స్ప్రెషన్స్ సరిపోలవు . GNU ఆపరేటర్లు ప్రత్యేకమైనవి కావు, విరామం వ్యక్తీకరణలు అందుబాటులో లేవు, మరియు POSIX అక్షర తరగతులు కాదు ( [[: alnum:]] మొదలైనవి). ఆక్సల్ మరియు హెక్సాడెసిమల్ ఎస్కేప్ సీక్వెన్సులు వర్ణించిన అక్షరాలను వాచ్యంగా పరిగణిస్తారు, అవి రెగ్యులర్ వ్యక్తీకరణ మెటాచరాక్టర్లను సూచిస్తున్నప్పటికీ.
--re-విరామం
సాధారణ వ్యక్తీకరణల్లో విరామం వ్యక్తీకరణలను అనుమతించు, అయినప్పటికీ - సాంప్రదాయం అందించబడింది.
చర్యలు
చర్య ప్రకటనలు జంట కలుపులు, మరియు {{0 } యాక్షన్ ప్రకటనలు సాధారణ భాషలు, నియత మరియు చాలా భాషలలో కనిపించే రీపింగ్ ప్రకటనలు ఉంటాయి. ఆపరేటర్లు, నియంత్రణ స్టేట్మెంట్లు మరియు అవుట్పుట్ / అవుట్పుట్ స్టేట్మెంట్లు అందుబాటులో ఉన్నాయి.
ఆపరేటర్స్
AWK లో ఆపరేటర్లు, ముందస్తు తగ్గడం క్రమంలో, ఉన్నాయి
( ... )
సంఘపు
$
ఫీల్డ్ రిఫరెన్స్.
++ -
పెరుగుదల మరియు తరుగుదల, ఉపసర్గ మరియు తర్వాతి రెండు.
^
ఎక్స్పోనెన్షియేషన్ ( ** కూడా ఉపయోగించవచ్చు, మరియు ** = కేటాయింపు ఆపరేటర్కు).
+ -!
Unary ప్లస్, unary మైనస్, మరియు తార్కిక నిరాకరణ.
* /%
గుణకారం, విభజన మరియు మాడ్యులస్.
+ -
అదనంగా మరియు వ్యవకలనం.
స్థలం
స్ట్రింగ్ కలయిక.
<>
<=> =
! === సాధారణ రిలేషనల్ ఆపరేటర్లు.
~! ~
రెగ్యులర్ ఎక్స్ప్రెషన్ మ్యాచ్, తిరస్కరించబడిన మ్యాచ్. గమనిక: ఒక స్థిరమైన సాధారణ వ్యక్తీకరణను ( / foo / ) ఎడమవైపున ~ లేదా ! ~ ~ ఉపయోగించవద్దు . కుడి చేతి వైపు మాత్రమే ఉపయోగించు. వ్యక్తీకరణ / foo / ~ exp అనేది (($ 0 ~ / foo /) ~ exp ) అదే అర్థం. ఇది సాధారణంగా ఉద్దేశించినది కాదు.
లో
అర్రే సభ్యత్వం.
&&
లాజికల్ మరియు.
||
తార్కిక OR.
?:
సి షరతు వ్యక్తీకరణ. ఇది రూపం expr1 ను కలిగి ఉంది ? expr2 : expr3 . Expr1 నిజం అయితే, వ్యక్తీకరణ విలువ expr2 , లేకుంటే అది expr3 . Expr2 మరియు expr3 లలో ఒకటి మాత్రమే పరిశీలించబడుతుంది.
= + = - =
* = / =% = ^ = కేటాయింపు. సంపూర్ణ కేటాయింపు ( var = విలువ ) మరియు ఆపరేటర్-అసైన్మెంట్ (ఇతర రూపాలు) రెండూ మద్దతిస్తాయి.
నియంత్రణ ప్రకటనలు
నియంత్రణ ప్రకటనలు క్రింది విధంగా ఉన్నాయి:
( ఇండెక్స్ ) తొలగింపు శ్రేణి తొలగింపు [ వ్యక్తీకరణ ] తొలగింపు శ్రేణి తొలగింపు [ వ్యక్తీకరణ ] ప్రకటనలు }I / O ప్రకటనలు
ఇన్పుట్ / అవుట్పుట్ ప్రకటనలు క్రింది విధంగా ఉన్నాయి:
దగ్గరగా ( ఫైల్ [ , ఎలా ] )
ఫైల్, పైపు లేదా సహ ప్రక్రియను మూసివేయండి. రెండు-మార్గం పైప్ యొక్క ముగింపును సహ-ప్రక్రియకు మూసివేసేటప్పుడు మాత్రమే వాడాలి. ఇది ఒక స్ట్రింగ్ విలువ, "to" లేదా "from" గా ఉండాలి .
getline
తదుపరి ఇన్పుట్ రికార్డు నుండి $ 0 సెట్ చెయ్యండి; NF , NR , FNR సెట్.
getline < file
ఫైల్ యొక్క తదుపరి రికార్డు నుండి $ 0 సెట్ చెయ్యండి; NF సెట్.
getline var
తదుపరి ఇన్పుట్ రికార్డు నుండి var సెట్ చెయ్యండి; సెట్ NR , FNR .
getline var < file
ఫైల్ యొక్క తదుపరి రికార్డ్ నుండి var ను సెట్ చేయండి .
కమాండ్ | getline [ var ]
అవుట్పుట్ను $ 0 లేదా var గా పైపు వలె కమాండ్ను అమలు చేయండి.
కమాండ్ | & getline [ var ]
అవుట్పుట్ను పైప్ పైపింగ్ గాని $ 0 లేదా var గా పైకి కింది ప్రక్రియగా అమలు చేయండి. సహ ప్రక్రియలు ఒక gawk పొడిగింపు.
తరువాత
ప్రస్తుత ఇన్పుట్ రికార్డ్ను ప్రాసెస్ చేయడాన్ని ఆపివేయి. తదుపరి ఇన్పుట్ రికార్డు AWK ప్రోగ్రామ్లో మొదటి నమూనాతో చదవడం మరియు ప్రాసెసింగ్ మొదలవుతుంది. ఇన్పుట్ డేటా ముగింపు చేరుకుంటే, END బ్లాక్ (లు), ఏదైనా ఉంటే, అమలు చేయబడతాయి.
nextfile
ప్రస్తుత ఇన్పుట్ ఫైల్ను ప్రాసెస్ చేయడాన్ని ఆపివేయి. తర్వాతి ఇన్పుట్ రికార్డు రీడ్ తదుపరి ఇన్పుట్ ఫైల్ నుండి వస్తుంది. FILENAME మరియు ARGIND నవీకరించబడ్డాయి, FNR 1 కు రీసెట్ చేయబడుతుంది, మరియు AWK ప్రోగ్రామ్లో మొదటి నమూనాతో ప్రాసెసింగ్ మొదలవుతుంది. ఇన్పుట్ డేటా ముగింపు చేరుకుంటే, END బ్లాక్ (లు), ఏదైనా ఉంటే, అమలు చేయబడతాయి.
ముద్రణ
ప్రస్తుత రికార్డును ముద్రిస్తుంది. అవుట్పుట్ రికార్డు ORS వేరియబుల్ విలువతో నిలిపివేయబడింది.
ప్రింట్ -జాబితా ముద్రణ
ప్రింట్లు వ్యక్తీకరణలు. ప్రతి వ్యక్తీకరణ OFS వేరియబుల్ విలువతో వేరు చేయబడుతుంది. అవుట్పుట్ రికార్డు ORS వేరియబుల్ విలువతో నిలిపివేయబడింది.
expr-list > ఫైల్ను ముద్రించండి
ఫైల్లో ప్రింట్లు వ్యక్తీకరణలు. ప్రతి వ్యక్తీకరణ OFS వేరియబుల్ విలువతో వేరు చేయబడుతుంది. అవుట్పుట్ రికార్డు ORS వేరియబుల్ విలువతో నిలిపివేయబడింది.
printf fmt, expr-list
ఫార్మాట్ మరియు ప్రింట్.
printf fmt, expr-list > ఫైల్
ఫైల్ను ఫార్మాట్ చేయండి మరియు ముద్రించండి.
వ్యవస్థ ( cmd- లైన్ )
కమాండ్ cmd-line ఆదేశించు , మరియు నిష్క్రమణ స్థితి తిరిగి. (ఇది POSIX యేతర వ్యవస్థలలో అందుబాటులో ఉండకపోవచ్చు.)
fflush ( [ file ] )
బహిరంగ అవుట్పుట్ ఫైల్ లేదా పైప్ ఫైల్తో సంబంధం ఉన్న ఏదైనా బఫర్లను ఫ్లష్ చేయండి . ఫైల్ తప్పిపోతే, అప్పుడు ప్రామాణిక అవుట్పుట్ కొట్టుకుపోతుంది. ఫైలు శూన్య స్ట్రింగ్ ఉంటే, అప్పుడు అన్ని ఓపెన్ అవుట్పుట్ ఫైళ్లు మరియు పైపులు వారి బఫర్ flushed.
ప్రింట్ మరియు printf కోసం అదనపు అవుట్పుట్ రీడైరెక్షన్స్ అనుమతించబడతాయి.
ముద్రణ >> ఫైల్
ఫైల్కు అవుట్పుట్ను చేర్చుతుంది.
ప్రింట్ ... | కమాండ్
పైపు మీద వ్రాస్తాడు.
ప్రింట్ ... | కమాండ్
సహ-ప్రక్రియకు డేటాను పంపుతుంది.
Getline కమాండ్ 0 మరియు ఫైల్ యొక్క -1 చివరలో దోషాన్ని తిరిగి పంపుతుంది. దోషం మీద, ERRNO సమస్యను వివరించే స్ట్రింగ్ను కలిగి ఉంది.
గమనిక: ఒక పైప్ లేదా సహ-ప్రక్రియను getline కు , లేదా ముద్రణ లేదా printf నుండి ఒక లూప్లో ఉపయోగించినట్లయితే, మీరు కమాండ్ యొక్క కొత్త ఉదాహరణలను సృష్టించేందుకు దగ్గరగా () ను ఉపయోగించాలి. వారు EOF తిరిగి వచ్చినప్పుడు AWK స్వయంచాలకంగా పైపులు లేదా సహ ప్రక్రియలను మూసివేయదు.
Printf స్టేట్మెంట్
Printf స్టేట్మెంట్ మరియు sprintf () ఫంక్షన్ యొక్క AWK సంస్కరణలు (క్రింద చూడండి) కింది మార్పిడి వివరణ ఫార్మాట్లను అంగీకరించాలి:
% సి
ఒక ASCII పాత్ర. % C కోసం వాడిన వాల్యూమ్ సంఖ్యా ఉంటే, ఇది ఒక పాత్రగా ముద్రించబడుతుంది మరియు ముద్రించబడుతుంది. లేకపోతే, వాదన ఒక స్ట్రింగ్ భావించబడుతుంది, మరియు ఆ స్ట్రింగ్ యొక్క మొదటి అక్షరం ముద్రించబడుతుంది.
% d , % i
ఒక దశాంశ సంఖ్య (పూర్ణాంకం భాగం).
% e,% E
రూపం యొక్క ఫ్లోటింగ్ పాయింట్ సంఖ్య [-] d.dddddde [+ -] dd . % E ఫార్మాట్ E బదులుగా E ఉపయోగిస్తుంది.
% f
రూపం యొక్క ఫ్లోటింగ్ పాయింట్ సంఖ్య [-] ddd.dddddd .
% g,% G
% E లేదా % f మార్పిడిని వాడండి, ఏది తక్కువగా ఉంటుంది, అసంఖ్యాక సున్నాలు అణిచివేయబడతాయి. % G ఆకృతి % E బదులుగా % E ను ఉపయోగిస్తుంది.
% o
సంతకం చేయని అష్ట సంఖ్య (పూర్ణాంకం కూడా).
% u సంతకం చేయని దశాంశ సంఖ్య (మళ్ళీ, పూర్ణాంకం).
% s
ఒక పాత్ర స్ట్రింగ్.
% x,% X
సంతకం చేయని హెక్సాడెసిమల్ సంఖ్య (పూర్ణాంకం). % X ఆకృతి ABCDEF బదులుగా abcdef ను ఉపయోగిస్తుంది.
%%
ఒక సింగిల్ % అక్షరం; ఏ వాదన మార్చబడలేదు.
ఐచ్ఛికం, అదనపు పారామితులు % మరియు నియంత్రణ అక్షరం మధ్య ఉండవచ్చు:
లెక్కించు $
ఫార్మాటింగ్ లో ఈ సమయంలో లెక్కింపు 'th వాదనను ఉపయోగించండి. దీనిని స్థాన స్పెసిఫైయర్ అని పిలుస్తారు మరియు ప్రధానంగా AWK ప్రోగ్రాం యొక్క అసలైన టెక్స్ట్లో కాదు, ఫార్మాట్ తీగలను అనువదించిన వెర్షన్లలో ఉపయోగించడానికి ఉద్దేశించబడింది. ఇది ఒక gawk పొడిగింపు.
-
దాని క్షేత్రంలో వ్యక్తీకరణ ఎడమ-సమర్థించడం చేయాలి.
స్థలం
సంఖ్యా మార్పిడుల కోసం, ఒక స్థలంతో అనుకూల విలువలు మరియు మైనస్ గుర్తుతో ప్రతికూల విలువలు.
+
వెడల్పు మాడిఫైయర్ (దిగువన చూడు) ముందు ఉపయోగించే ప్లస్ సంకేతం, ఫార్మాట్ చెయ్యబడ్డ డేటా అనుకూలమైనప్పటికీ, ఎల్లప్పుడూ సంఖ్యా మార్పిడుల కోసం ఒక సంకేతాన్ని అందించాలని చెప్పింది. + స్పేస్ మాడిఫైయర్ను భర్తీ చేస్తుంది.
#
నిర్దిష్ట నియంత్రణ అక్షరాల కోసం `` ప్రత్యామ్నాయ రూపం '' ఉపయోగించండి. % O కోసం , సున్నాను సరఫరా చేయండి. % X మరియు % X ల కోసం, ఒక nonzero ఫలితం కోసం ఒక ప్రముఖ 0x లేదా 0X ను సరఫరా చేస్తుంది. % E , % E మరియు % f లకు ఫలితం ఎల్లప్పుడూ దశాంశ బిందువును కలిగి ఉంటుంది. % G మరియు % G లకు , ఫలితాల నుండి వెనుకంజలో ఉన్న సున్నాలు తొలగించబడవు.
0
ప్రధాన 0 (సున్నా) జెండాగా పనిచేస్తుంది, అది అవుట్పుట్లకు బదులుగా సున్నాలతో అవుట్పుట్ చేయాలి. ఇది సంఖ్య-కాని అవుట్పుట్ ఆకృతులకు కూడా వర్తిస్తుంది. ముద్రణకు విలువ కంటే ఫీల్డ్ వెడల్పు విస్తృతంగా ఉన్నప్పుడు ఈ జెండా ప్రభావం మాత్రమే ఉంటుంది.
వెడల్పు
ఫీల్డ్ ఈ వెడల్పుకు మందంగా ఉండాలి. ఫీల్డ్ సాధారణంగా ఖాళీలను తో padded ఉంది. 0 జెండా ఉపయోగించబడితే, అది సున్నాల ద్వారా మందంగా ఉంటుంది.
. prec
ప్రింటింగ్ చేసేటప్పుడు ఉపయోగించడానికి ఖచ్చితత్వాన్ని పేర్కొనే సంఖ్య. % E , % E మరియు % f ఫార్మాట్లకు, మీరు దశాంశ బిందువు యొక్క కుడి వైపున ముద్రించాలనుకుంటున్న సంఖ్యల సంఖ్యను నిర్దేశిస్తుంది. % G , మరియు % G ఆకృతులకు, ఇది గణనీయ సంఖ్యల సంఖ్యను నిర్దేశిస్తుంది. % D , % o , % i , % u , % x మరియు % X ఆకృతులకు, అది ప్రింట్ చెయ్యడానికి కనీస సంఖ్యల సంఖ్యను నిర్దేశిస్తుంది. % S కోసం , ఇది ముద్రించబడే స్ట్రింగ్ నుండి అక్షరాల యొక్క గరిష్ట సంఖ్యను నిర్దేశిస్తుంది.
ANSI సి printf () నిత్యకృత్యాలు యొక్క డైనమిక్ వెడల్పు మరియు ఖచ్చితమైన సామర్థ్యాలు మద్దతిస్తాయి. ఒక * వెడల్పు లేదా ఖచ్చితమైన నిర్దేశాల స్థానంలో A * వారి విలువలను వాదన జాబితా నుండి printf లేదా sprintf () కు తీసుకువెళుతుంది. ఒక డైనమిక్ వెడల్పు లేదా ఖచ్చితత్వముతో స్థాన స్పెసిఫైయర్ను ఉపయోగించుటకు, ఫార్మాట్ స్ట్రింగ్ లో * * తర్వాత COUNT ని సరఫరా చేయండి. ఉదాహరణకు, "% 3 $ * 2 $. * 1 $ s" .
ప్రత్యేక ఫైలు పేర్లు
ముద్రణ లేదా printf నుండి ఫైల్లోని I / O రీడైరెక్షన్ చేస్తున్నప్పుడు లేదా ఫైల్ నుండి getline ద్వారా, gawk అంతర్గతంగా కొన్ని ప్రత్యేక ఫైల్ పేర్లను గుర్తిస్తుంది. ఈ ఫైల్ పేర్లు గోకు యొక్క పేరెంట్ ప్రాసెస్ (సాధారణంగా షెల్) నుండి వారసత్వంగా తెరిచిన ఫైల్ వర్ణనలకు ప్రాప్తిని అనుమతిస్తాయి. ఈ ఫైల్ పేర్లు డాటా ఫైళ్ళకు పేరు పెట్టడానికి కమాండ్ లైన్ లో కూడా ఉపయోగించవచ్చు. ఫైల్ పేర్లు:
/ dev / stdin
ప్రామాణిక ఇన్పుట్.
/ dev / stdout
ప్రామాణిక అవుట్పుట్.
/ dev / stderr
ప్రామాణిక లోపం అవుట్పుట్.
/ dev / fd / n
ఓపెన్ ఫైల్ వర్ణనతో అనుబంధించబడిన ఫైల్ n .
ఈ దోష సందేశాలు చాలా ఉపయోగకరంగా ఉంటాయి. ఉదాహరణకి:
ప్రింట్ "మీరు దీనిని చంపాము!" > "/ dev / stderr"
అయితే మీరు లేకపోతే ఉపయోగించాలి
ప్రింట్ "మీరు దీనిని చంపాము!" | "పిల్లి 1> & 2"
TCP / IP నెట్వర్క్ కనెక్షన్లను సృష్టించడానికి ఈ క్రింది ప్రత్యేక పేర్లను ఉపయోగించడం కోసం | & సహ-ప్రక్రియ ఆపరేటర్తో ఉపయోగించవచ్చు.
/ inet / tcp / lport / rhost / rport
రిమోట్ పోర్ట్ రిపోర్టులో రిమోట్ హోస్ట్ రోహోస్ట్కు స్థానిక పోర్ట్ లాపోర్ట్పై TCP / IP కనెక్షన్ కోసం ఫైల్. వ్యవస్థ పోర్ట్ను ఎంచుకునేందుకు 0 యొక్క పోర్ట్ను ఉపయోగించండి.
/ inet / udp / lport / rhost / rport
ఇలాంటి, కానీ TCP / IP బదులుగా UDP / IP ను ఉపయోగించండి.
/ inet / raw / lport / rhost / rport
భవిష్యత్ ఉపయోగం కోసం రిజర్వు చేయబడింది.
ఇతర ప్రత్యేక ఫైల్ పేర్లు రన్నింగ్ గ్యాక్ ప్రాసెస్ గురించి సమాచారం అందుబాటులో ఉంటాయి. ఈ ఫైల్పేర్లు ఇప్పుడు వాడుకలో లేవు. వారు అందించే సమాచారాన్ని పొందేందుకు PROCINFO శ్రేణిని ఉపయోగించండి. ఫైల్ పేర్లు:
/ dev / పిఐడి
ఈ ఫైల్ను చదువుతున్న ప్రస్తుత ప్రాసెస్ యొక్క ప్రాసెస్ ఐడిని దశాంశలో, క్రొత్త లైన్తో ముగించారు.
/ dev / PPID
ఈ ఫైల్ను చదువుతున్న ప్రస్తుత ప్రాసెస్ యొక్క మాతృ ప్రక్రియ ఐడిని దశాంశలో, క్రొత్త లైన్తో ముగించారు.
/ dev / pgrpid
ఈ ఫైల్ను చదువుతున్న ప్రస్తుత ప్రాసెస్ యొక్క ప్రాసెస్ సమూహం ఐడిని దశాంశలో, క్రొత్త లైన్తో ముగించారు.
/ dev / వినియోగదారు
ఈ ఫైల్ను చదవడం అనేది ఒక క్రొత్త రికార్డుతో ఒక రికార్డును రద్దు చేస్తుంది. ఖాళీలను ఖాళీలను తో వేరు. Getuid (2) సిస్టమ్ కాల్ యొక్క విలువ $ 2 , geteuid (2) సిస్టమ్ కాల్ విలువ, $ 3 getgid (2) సిస్టమ్ కాల్ యొక్క విలువ, మరియు $ 4 getegid (2) విలువ. సిస్టమ్ కాల్. ఏవైనా అదనపు ఖాళీలను ఉంటే, వారు గుంపు ID లు getgroups (2) ద్వారా తిరిగి ఇవ్వబడ్డాయి . అన్ని వ్యవస్థలపై బహుళ సమూహాలకు మద్దతు ఉండదు.
సంఖ్యా విధులు
AWK కింది అంతర్నిర్మిత అంకగణిత విధులు కలిగి ఉంది:
atan2 ( y , x )
రేడియన్లలో y / x యొక్క ఆర్క్టెంజెంట్ను చూపుతుంది.
cos ( expr )
రేడియన్లలో ఉన్న ఎక్స్ప్రె యొక్క కొసైన్ను చూపుతుంది.
exp ( expr )
ఎక్స్పోనెన్షియల్ ఫంక్షన్.
int ( expr )
పూర్ణాంకానికి కత్తిరించడం.
లాగ్ ( ఎక్స్ప్రెర్ )
సహజ సంవర్గమానం ఫంక్షన్.
ర్యాండ్ ()
0 మరియు 1 మధ్య యాదృచ్చిక సంఖ్యను చూపుతుంది.
పాపం ( బహిష్కరణ )
రేడియన్లలో ఉన్న ఎక్స్ప్రెర్ యొక్క సైన్ని చూపుతుంది .
sqrt ( ఎక్స్ప్రెర్ )
స్క్వేర్ రూట్ ఫంక్షన్.
srand ( [ expr ] )
యాదృచ్ఛిక సంఖ్య జెనరేటర్ కోసం ఒక కొత్త సీడ్ గా expr ఉపయోగాలు. ఏ ఎక్స్ప్రెర్ అందించకపోతే, రోజు సమయం ఉపయోగించబడుతుంది. యాదృచ్చిక సంఖ్య జెనరేటర్ కోసం మునుపటి విలువ, తిరిగి విలువ.
స్ట్రింగ్ విధులు
Gawk కింది అంతర్నిర్మిత స్ట్రింగ్ ఫంక్షన్లను కలిగి ఉంది:
ఇసుక ( s [ , d ] )
మూల శ్రేణులలో ఎలిమెంట్ల సంఖ్యను చూపుతుంది. విలువలు పోల్చడం కోసం గ్లాక్ యొక్క సాధారణ నియమాలను ఉపయోగించి s యొక్క కంటెంట్లను క్రమబద్ధీకరించబడతాయి మరియు s యొక్క క్రమబద్ధీకరించబడిన విలువల యొక్క సూచికలు భర్తీ చేయబడతాయి వరుస వరుస పూర్ణాంకాలతో ప్రారంభమవుతాయి. 1. ఐచ్ఛిక గమ్యస్థానం d పేర్కొనబడినట్లయితే, s మొదటిసారి duplicated , ఆపై D క్రమబద్ధీకరించబడింది, మూలం శ్రేణి యొక్క సూచికలు మారదు.
జెన్సుబ్ ( r , s , h [ , t ] )
రెగ్యులర్ వ్యక్తీకరణ యొక్క మ్యాచ్లకు లక్ష్యాన్ని స్ట్రింగ్ t ను శోధించండి. H , G లేదా G తో ప్రారంభమయ్యే స్ట్రింగ్ ఉంటే, అప్పుడు r యొక్క అన్ని మ్యాచ్లను s తో భర్తీ చేయండి. లేకపోతే, h అనేది స్థానంలో ఉన్న r యొక్క ఏ మ్యాచ్ సూచిస్తుంది. T సరఫరా చేయకపోతే, బదులుగా $ 0 ఉపయోగించబడుతుంది. ప్రత్యామ్నాయ పాఠం లోపల, n \ n , n అనేది 1 నుండి 9 వరకు ఉన్న అంకె, n 'వ వక్షారిపిత సబ్ ఎక్స్ప్రెస్ప్రెషన్కు సరిపోయే వచనాన్ని సూచించడానికి ఉపయోగించబడుతుంది. పాత్ర & 0 వలె మొత్తం సరిపోలిన వచనాన్ని సూచిస్తుంది. ఉప () మరియు gsub () వలె కాకుండా, సవరించిన స్ట్రింగ్ ఫంక్షన్ ఫలితంగా తిరిగి పొందబడుతుంది , మరియు అసలు లక్ష్యం స్ట్రింగ్ మార్చబడదు.
gsub ( r , s [ , t ] )
స్ట్రింగ్ t లో సాధారణ వ్యక్తీకరణ r కి సరిపోలే ప్రతి పదార్ధం కోసం, స్ట్రింగ్ s ను ప్రత్యామ్నాయం చేయండి మరియు ప్రత్యామ్నాయాల సంఖ్యను తిరిగి పంపుతుంది. T సరఫరా చేయకపోతే, $ 0 ను వాడండి. భర్తీ టెక్స్ట్ లో & వాస్తవానికి సరిపోలే టెక్స్ట్ తో భర్తీ చేయబడింది. అక్షరార్థాన్ని పొందడానికి & ఉపయోగించు. (ఇది తప్పక "\\ &" గా టైప్ చెయ్యాలి; GAWK: ఉప ఎగ్క్ ప్రోగ్రామింగ్ అనేది సబ్ () , జిసుబ్ () , మరియు జిన్సుబ్ () యొక్క ప్రత్యామ్నాయ పాఠం యొక్క ఉపాయము మరియు వెనుకకు ఉండే నియమాల పూర్తి చర్చ కోసం.)
ఇండెక్స్ ( లు , టి )
String s లో స్ట్రింగ్ t యొక్క ఇండెక్స్ను చూపుతుంది లేదా t లేకుంటే 0 ని చూపిస్తుంది. (ఇది అక్షరాల సూచికలు ఒకటి ప్రారంభమవుతుంది అని సూచిస్తుంది.)
పొడవు ( [ లు ] )
స్ట్రింగ్ s యొక్క పొడవు, లేదా s ని సరఫరా చేయకపోతే $ 0 యొక్క పొడవును చూపుతుంది.
మ్యాచ్ ( లు , r [ , a ] )
సాధారణ వ్యక్తీకరణ r సంభవిస్తుంది, లేదా r ఉండకపోతే r 0, మరియు RSTART మరియు RLENGTH యొక్క విలువలను సెట్ చేస్తుంది. వాదన క్రమంలో ~ ఆపరేటర్: str ~ re కోసం అదే అని గమనించండి. ఒకవేళ శ్రేణిని అందించినట్లయితే, తీసివేయబడుతుంది మరియు అప్పుడు n ద్వారా 1 మూలకాలు r యొక్క భాగాలతో సమితి యొక్క భాగాలతో నిండి ఉంటాయి. ఒక 0 యొక్క మూలకం యొక్క మొత్తం మూలకం మొత్తం రెగ్యుషన్ వ్యక్తీకరణతో సరిపోలుతుంది.
స్ప్లిట్ ( s , a [ , r ] )
స్ట్రింగ్ s ను రెగ్యులర్ ఎక్స్ప్రెషన్ r లో శ్రేణిలోకి విభజించి ఫీల్డ్ల సంఖ్యను అందిస్తుంది. R తొలగించబడితే, బదులుగా FS ఉపయోగించబడుతుంది. శ్రేణి మొదటి క్లియర్ చేయబడుతుంది. స్ప్లిట్టింగ్ ఫీల్డ్ను విభజించడానికి, పైన వివరించినట్లుగా ప్రవర్తిస్తుంది.
sprintf ( fmt , expr- జాబితా )
Fmt ప్రకారం ప్రింట్స్ expr- జాబితా , మరియు ఫలిత స్ట్రింగ్ తిరిగి.
స్త్రోనంం ( స్ట్రీట్ )
Examines str , మరియు దాని సంఖ్యా విలువను తిరిగి అందిస్తుంది. Str 0 ఒక ప్రముఖ 0 తో ప్రారంభమైతే, strtonum () str ఒక ఆక్టల్ సంఖ్య అని ఊహిస్తుంది. స్ట్రింగ్ ఒక ప్రముఖ 0x లేదా 0x తో ప్రారంభమైతే, strtonum () str ఒక హెక్సాడెసిమల్ సంఖ్య అని ఊహిస్తుంది.
ఉప ( r , s [ , t ] )
జస్ట్ gsub () వంటిది , కానీ మొదటి సరిపోలిక పదార్ధం మాత్రమే మార్చబడుతుంది.
substr ( s , i [ , n ] )
నేను మొదలుపెట్టిన చాలా n- అక్షర సమ్మేళనం వద్ద తిరిగి చూపుతుంది. N తొలగించబడితే, మిగిలిన s ఉపయోగించబడుతుంది.
టవరు ( ST )
String str ఒక కాపీని చూపుతుంది, అన్ని upper- కేస్ అక్షరాలు వారి సంబంధిత తక్కువ కేసు ప్రతిరూపాలను అనువాదం. నాన్-అక్షరక్రియేతర అక్షరాలు మారవు.
toupper ( str )
స్ట్రింగ్ స్ట్రీట్ యొక్క కాపీని చూపుతుంది, అన్ని లోయర్-కేస్ అక్షరాలను వారి సంబంధిత ఉన్నత-కేస్ సహచరులకు అనువాదం చేస్తారు. నాన్-అక్షరక్రియేతర అక్షరాలు మారవు.
సమయం విధులు
AWK కార్యక్రమాల ప్రాథమిక ఉపయోగాల్లో ఒకటి సమయ స్టాంప్ సమాచారాన్ని కలిగి ఉన్న లాగ్ ఫైళ్లను ప్రాసెస్ చేస్తున్నందున, సమయం స్టాంపులు సంపాదించడానికి మరియు ఆకృతీకరణకు Gawk క్రింది విధులు అందిస్తుంది.
mktime ( datepec )
సిర్నిమ్ () ద్వారా తిరిగి రాబట్టిన అదే రూపాన్ని ఒక సమయ స్టాంప్లో రాన్సులు datepec . తేదీపీక్ రూపం YYYY MM DD HH MM SS [DST] యొక్క స్ట్రింగ్. స్ట్రింగ్ యొక్క సారాంశాలు వరుసగా శతాబ్దంతో పాటుగా, 1 నుండి 12 వరకు, 1 నుండి 31 వరకు ఉన్న రోజు, 0 నుండి 23 నుండి రోజుకు గంటకు ప్రాతినిధ్యం వహిస్తున్న ఆరు లేదా ఏడు సంఖ్యలను సూచిస్తాయి, 0 నుండి నిమిషం వరకు 59, మరియు రెండవ నుండి 0 కు 60, మరియు ఒక ఐచ్ఛిక పగటి సేవ్ జెండా. ఈ సంఖ్యల విలువలు పేర్కొన్న శ్రేణులలో ఉండరాదు; ఉదాహరణకు, ఒక గంట -1 అనగా అర్ధరాత్రి 1 గంట ముందుగా ఉంటుంది. మూలం-సున్నా గ్రెగోరియన్ క్యాలెండర్ ఊహించబడుతుంది, సంవత్సరానికి 1 సంవత్సరం మరియు 1 సంవత్సరం ముందు సంవత్సరానికి 0 తో. సమయం స్థానిక సమయమండలిలో ఉన్నట్లు భావించబడుతుంది. డేలైట్ సేవింగ్ ఫ్లాగ్ సానుకూలంగా ఉంటే, సమయం పగటి సమయ వ్యవధిగా భావించబడుతుంది; సున్నా అయితే, సమయం ప్రామాణిక సమయం అని భావించబడుతుంది; మరియు ప్రతికూల (డిఫాల్ట్) ఉంటే, mktime () పేర్కొన్న సమయం కోసం పగటి సమయం ఆదా అవుతుందో లేదో నిర్ణయించడానికి ప్రయత్నిస్తుంది. డేట్పెక్లో తగినంత మూలకాలు ఉండకపోయినా లేదా ఫలిత సమయము పరిధిలో ఉంటే, mktime () రిటర్న్స్ -1.
స్టఫ్ టైం ( [ ఫార్మాట్ [ టైంస్టాంప్ ]] )
ఫార్మాట్ లో స్పెసిఫికేషన్ ప్రకారం స్టాంప్ ఆకృతులు . సిస్టైమ్ () ద్వారా తిరిగి వచ్చిన సమయ ఆకారం అదే రూపంలో ఉండాలి. సమయ ముద్ర లేకపోతే, రోజు యొక్క ప్రస్తుత సమయం ఉపయోగించబడుతుంది. ఫార్మాట్ తప్పిపోయినట్లయితే, తేదీ (1) యొక్క అవుట్పుట్కు సమానమైన డిఫాల్ట్ ఫార్మాట్ ఉపయోగించబడుతుంది. అందుబాటులో ఉన్నట్లు హామీ ఇవ్వబడిన ఫార్మాట్ మార్పిడుల కొరకు ANSI C లో strftime () ఫంక్షన్ కొరకు వివరణను చూడండి. స్టఫ్ టైం (3) యొక్క పబ్లిక్-డొమైన్ వెర్షన్ మరియు ఒక మనిషి పేజీ ఇది గాకతో వస్తాయి; ఆ వెర్షన్ను Gawk నిర్మించడానికి ఉపయోగించినట్లయితే, ఆ మ్యాన్ పేజిలో వివరించిన అన్ని మార్పిడులు గ్యాక్కు అందుబాటులో ఉన్నాయి .
systime ()
ఎపిచ్ (సెకనుల నుండి 1970-01-01 00:00:00 UTC) సెకన్ల సంఖ్యగా రోజు యొక్క ప్రస్తుత సమయం చూపుతుంది.
బిట్ మానిప్యులేషన్స్ విధులు
Gawk యొక్క వెర్షన్ 3.1 తో మొదలుకొని, క్రింది బిట్ తారుమారు విధులు అందుబాటులో ఉన్నాయి. అవి సంతకం చేయని దీర్ఘ పూర్ణాంకాలకు డబుల్-ప్రిసిషన్ ఫ్లోటింగ్ పాయింట్ విలువలను మార్చడం ద్వారా పని చేస్తాయి, అప్పుడు ఆపరేషన్ చేస్తూ, ఆ ఫలితాన్ని తిరిగి ఫ్లోటింగ్ పాయింట్గా మార్చుతుంది. విధులు:
మరియు ( v1 , v2 )
బిట్వైజ్ మరియు v1 మరియు v2 ద్వారా అందించబడిన విలువలు తిరిగి ఇవ్వండి.
ఫిర్యాదు ( విలువ )
విలువైన బిట్వైజ్ పూరకని తిరిగి ఇవ్వండి .
lshift ( విలువ , లెక్కింపు )
విలువ యొక్క విలువను తిరిగి ఇవ్వండి , లెక్కించిన బిట్స్ ద్వారా వదిలివేయబడుతుంది.
లేదా ( v1 , v2 )
Bitwise లేదా V1 మరియు v2 ద్వారా అందించబడిన విలువలు తిరిగి ఇవ్వండి.
rshift ( విలువ , లెక్క )
విలువ యొక్క విలువను తిరిగి ఇవ్వండి , లెక్కించిన బిట్స్ ద్వారా సరిగ్గా మార్చబడుతుంది.
xor ( v1 , v2 )
V1 మరియు v2 ద్వారా అందించబడిన విలువల్లో బిట్వివర్ XOR ని తిరిగి పంపుతుంది.
అంతర్జాతీయకరణ విధులు
Gawk యొక్క వర్షన్ 3.1 తో మొదలుపెట్టి, రన్-టైమ్లో తీగలను అనువదించడానికి మీ AWK ప్రోగ్రామ్లో నుండి క్రింది విధులు ఉపయోగించవచ్చు. పూర్తి వివరాల కోసం, GAWK చూడండి : సమర్థవంతమైన AWK ప్రోగ్రామింగ్ .
bindtextdomain ( డైరెక్టరీ [ , డొమైన్ ] )
. మో ఫైళ్లు కోసం gawk కనిపించే డైరెక్టరీని నిర్దేశిస్తుంది, అవి "ప్రామాణిక" స్థానాల్లో (ఉదా., పరీక్ష సమయంలో) ఉంచకూడదు లేదా చేయలేము. ఇది డొమైన్ "బంధం" ఉన్న డైరెక్టరీని అందిస్తుంది.
డిఫాల్ట్ డొమైన్ TEXTDOMAIN యొక్క విలువ. డైరెక్టరీ శూన్య స్ట్రింగ్ ( "" ) అయితే, అప్పుడు bindtextdomain () ఇచ్చిన డొమైన్ కోసం ప్రస్తుత బైండింగ్ను అందిస్తుంది.
dcgettext ( స్ట్రింగ్ [ , డొమైన్ [ , వర్గం ]] )
లొకేల్ వర్గ వర్గం కోసం టెక్స్ట్ డొమైన్ డొమైన్లో స్ట్రింగ్ యొక్క అనువాదం అందిస్తుంది. డొమైన్ కోసం డిఫాల్ట్ విలువ TEXTDOMAIN యొక్క ప్రస్తుత విలువ. వర్గం కోసం డిఫాల్ట్ విలువ "LC_MESSAGES" .
మీరు వర్గానికి విలువను సరఫరా చేస్తే, GAWK లో వివరించిన తెలిసిన లొకేల్ వర్గాల్లో ఒకదానికి సమానంగా స్ట్రింగ్ ఉండాలి : సమర్థవంతమైన AWK ప్రోగ్రామింగ్ . మీరు ఒక టెక్స్ట్ డొమైన్ను కూడా సరఫరా చేయాలి. మీరు ప్రస్తుత డొమైన్ను ఉపయోగించాలనుకుంటే TEXTDOMAIN ని ఉపయోగించండి.
dcngettext ( string1 , string2 , సంఖ్య [ , డొమైన్ [ , వర్గం ]] )
లొకేల్ వర్గం వర్గం కోసం టెక్స్ట్ డొమైన్ డొమైన్లో స్ట్రింగ్ 1 మరియు స్ట్రింగ్ 2 అనువాదానికి ఉపయోగించిన బహువచన రూపాన్ని చూపుతుంది. డొమైన్ కోసం డిఫాల్ట్ విలువ TEXTDOMAIN యొక్క ప్రస్తుత విలువ. వర్గం కోసం డిఫాల్ట్ విలువ "LC_MESSAGES" .
మీరు వర్గానికి విలువను సరఫరా చేస్తే, GAWK లో వివరించిన తెలిసిన లొకేల్ వర్గాల్లో ఒకదానికి సమానంగా స్ట్రింగ్ ఉండాలి : సమర్థవంతమైన AWK ప్రోగ్రామింగ్ . మీరు ఒక టెక్స్ట్ డొమైన్ను కూడా సరఫరా చేయాలి. మీరు ప్రస్తుత డొమైన్ను ఉపయోగించాలనుకుంటే TEXTDOMAIN ని ఉపయోగించండి.
USER- నిర్వచించిన విధులు
AWK లోని విధులు క్రింది విధంగా నిర్వచించబడ్డాయి:
ఫంక్షన్ పేరు ( పారామితి జాబితా ) { statements }
విధులు, చర్యలు లేదా వాటిలో వ్యక్తీకరణల నుండి పిలిచినప్పుడు విధులు అమలు చేయబడతాయి. ఫంక్షన్ కాల్ లో ఇచ్చిన అసలు పారామితులు ఫంక్షన్ లో ప్రకటించిన అధికారిక పారామితులను నిరూపించడానికి ఉపయోగిస్తారు. శ్రేణులను సూచన ద్వారా ఆమోదించబడతాయి, ఇతర వేరియబుల్స్ విలువ ద్వారా ఆమోదించబడతాయి.
విధులు మొదట AWK భాషలో భాగం కానందున, స్థానిక వేరియబుల్స్ యొక్క నియమం వికృతమైనది: ఇవి పారామితి జాబితాలో అదనపు పారామితులనుగా ప్రకటించబడతాయి. పారామితి జాబితాలో అదనపు ఖాళీలతో వాస్తవ పారామితుల నుండి స్థానిక వేరియబుల్స్ని వేరుచేయడం సమావేశం. ఉదాహరణకి:
ఫంక్షన్ f (p, q, a, b) # a మరియు b స్థానికం {...} / abc / {...; f (1, 2); ...}ఫంక్షన్ పేరుని అనుసరించే ఎడమ పారాథెరపిస్ వెంటనే ఏదైనా ప్రాయోజిత శ్వేత ప్రదేశం లేకుండానే అవసరం. ఇది సంశ్లేషణ ఆపరేటర్తో సంభాషణ అస్పష్టతను నివారించడం. ఈ పరిమితి పైన పేర్కొన్న అంతర్నిర్మిత ఫంక్షన్లకు వర్తించదు.
విధులు ఒకరికొకరు కాల్ చేయవచ్చు మరియు పునరావృతమవుతాయి. స్థానిక వేరియబుల్స్గా ఉపయోగించిన ఫంక్షన్ పారామితులు శూన్య స్ట్రింగ్కు మరియు ఫంక్షన్ ప్రవేశానికి చెందిన సున్నాకి ప్రారంభించబడతాయి.
ఒక ఫంక్షన్ నుండి విలువను తిరిగి రావడానికి తిరిగి వెనక్కి వెళ్లండి . విలువ విలువ ఇవ్వబడకపోతే తిరిగి విలువ నిర్వచించబడదు, లేదా ఫంక్షన్ "తిరిగి పడటం" ద్వారా తిరిగి వస్తే.
ఒకవేళ - లింట్ అందించబడినట్లయితే, గ్యాక్ పరుగు సమయంలో నిర్వచించని ఫంక్షన్లకు కాల్స్ గురించి హెచ్చరించింది, బదులుగా రన్ సమయంలో. రన్ సమయంలో ఒక నిర్వచించని ఫంక్షన్ కాల్ ఒక తీవ్రమైన దోషం.
ఫంక్షన్ స్థానంలో ఫంక్ పదం ఉపయోగించవచ్చు.
డైనమిక్ కొత్త ఫంక్షన్స్ లోడ్
Gawk యొక్క వర్షన్ 3.1 తో మొదలై, మీరు గ్లాస్ ఇంటర్ప్రెటర్కు కొత్త అంతర్నిర్మిత ఫంక్షన్లను డైనమిక్గా జోడించవచ్చు. పూర్తి వివరాలు ఈ మాన్యువల్ పేజీ యొక్క పరిధికి మించినవి; చూడండి GAWK: వివరాల కోసం సమర్థవంతమైన AWK ప్రోగ్రామింగ్ .
పొడిగింపు ( ఆబ్జెక్ట్ , ఫంక్షన్ )
ఆబ్జర్వేషన్ ద్వారా షేర్ చేయబడిన ఆబ్జెక్ట్ ఫైల్ను డైనమిక్గా లింక్ చేసి, ఆ వస్తువులోని ఫంక్షన్ను ఇన్వోక్ చేయండి. ఈ రెండింటినీ స్ట్రింగ్స్గా అందించాలి. ఫంక్షన్ ద్వారా అందించబడిన విలువను చూపుతుంది.
ఈ ఫంక్షన్ GAWK లో అందించబడింది మరియు డాక్యుమెంట్ చేయబడింది : సమర్థవంతమైన AWK ప్రోగ్రామింగ్ , కానీ ఈ ఫీచర్ గురించి ప్రతిదీ తదుపరి విడుదలలో మార్చడానికి అవకాశం ఉంది. మీరు ఈ లక్షణాన్ని మీరు తిరిగి మార్చడానికి ఇష్టపడని ఏదైనా కోసం ఉపయోగించవద్దని మేము నిశ్చయంగా సిఫార్సు చేస్తున్నాము.
సిగ్నల్స్
pgawk రెండు సంకేతాలను అంగీకరిస్తుంది. SIGUSR1 ప్రొఫైల్ను డంప్ చేస్తుంది మరియు ప్రొఫైల్ ఫైల్కు ఫంక్షన్ కాల్ స్టాక్ను చేస్తుంది, ఇది awkprof.out గానీ లేదా సంసార ఫైల్ పేరుతో గాని --profile ఎంపికతో ఉంటుంది. ఇది అమలు కొనసాగుతోంది. SIGHUP అది ప్రొఫైల్ మరియు ఫంక్షన్ కాల్ స్టాక్ను డంప్ చేసి, ఆపై నిష్క్రమించాలి.
ఉదాహరణలు
అన్ని వినియోగదారుల లాగిన్ పేర్లను ముద్రించి, క్రమబద్ధీకరించు: BEGIN {FS = ":"} {print $ 1 | "సార్ట్"} ఒక ఫైల్ లో పంక్తులు కౌంట్ చేయండి: {nlines ++} END {print nlines} ఫైలులో దాని సంఖ్యతో ప్రతి పంక్తిని పూరించండి : {print FNR, $ 0} Concatenate మరియు లైన్ సంఖ్య ( థీమ్పై వైవిధ్యం): {print nr, $ 0}అంతర్విషయీకరణ
స్ట్రింగ్ స్థిరాంకాలు డబుల్ కోట్స్లో జతపరచబడిన అక్షరాల క్రమాలు. ఆంగ్ల భాష మాట్లాడే వాతావరణాలలో, AWK ప్రోగ్రామ్లో స్థానిక సహజ భాషను అనువదించడానికి అవసరమైన తీగలను గుర్తించడం సాధ్యపడుతుంది. అటువంటి తీగలను AWK ప్రోగ్రామ్లో ఒక ప్రముఖ అండర్ స్కోర్ ("_" ") తో గుర్తించబడతాయి. ఉదాహరణకి,
gawk 'BEGIN {print "hello, world"}'
ఎల్లప్పుడూ హలో, ప్రపంచం ముద్రిస్తుంది. కానీ,
gawk 'BEGIN {print _ "hello, world"}'
ఫ్రాన్స్లో బోన్జౌర్, మోండే ముద్రించవచ్చు.
స్థానికీకరించదగిన AWK కార్యక్రమం ఉత్పత్తి మరియు అమలులో పాల్గొన్న అనేక దశలు ఉన్నాయి.
1.
మీ ప్రోగ్రామ్తో అనుబంధించబడిన పేరుకు టెక్స్ట్ డొమైన్ను సెట్ చేయడానికి TEXTDOMAIN వేరియబుల్కు విలువను ఇవ్వడానికి BEGIN చర్యను జోడించండి.
BEGIN {TEXTDOMAIN = "myprog"}
ఇది మీ కార్యక్రమంతో అనుసంధానించబడిన మో ఫైలును కనుగొనటానికి Gawk ను అనుమతిస్తుంది. ఈ దశ లేకుండా, gawk సందేశ టెక్స్ట్ డొమైన్ను ఉపయోగిస్తుంది, ఇది మీ ప్రోగ్రామ్ కోసం అనువాదాలను కలిగి ఉండదు.
2.
ప్రముఖ అండర్ స్కోర్లతో అనువదించవలసిన అన్ని తీగలను గుర్తించండి.
3.
అవసరమైతే, మీ ప్రోగ్రామ్లో dcgettext () మరియు / లేదా బైండ్టెక్స్ట్ డొమైన్ () ఫంక్షన్లను వుపయోగించండి .
4.
మీ ప్రోగ్రామ్ కోసం ఒక. పో ఫైలును రూపొందించడానికి gawk --gen-po-f myprog.awk> myprog.po ను అమలు చేయండి.
5.
తగిన అనువాదాలను అందించండి మరియు సంబంధిత మో ఫైలుని రూపొందించండి మరియు ఇన్స్టాల్ చేయండి.
అంతర్జాతీయకరణ లక్షణాలు GAWK లో పూర్తి వివరాలు వివరించబడ్డాయి : సమర్థవంతమైన AWK ప్రోగ్రామింగ్ .
Posix అనుకూలత
Gawk కోసం ఒక ప్రాథమిక లక్ష్యం POSIX ప్రమాణాలతో అనుకూలత మరియు UNIX awk యొక్క తాజా వెర్షన్తో ఉంటుంది. ఈ క్రమంలో, GAWK AWK పుస్తకంలో వర్ణించని క్రింది యూజర్ కనిపించే లక్షణాలను కలిగి ఉంటుంది, కానీ బెల్ లాబోరేటరీస్ వెర్షన్లో భాగం, మరియు POSIX ప్రమాణంలో ఉన్నాయి.
ఈ పుస్తకం వాదన వేరియబుల్ కేటాయింపు జరుగుతుంది అని సూచిస్తుంది, అయితే awk అనేది ఒక ఫైల్గా వాదనను తెరిచినప్పుడు జరుగుతుంది, ఇది BEGIN బ్లాక్ అమలు తర్వాత ఉంది. అయితే, ముందు అమలులో, ఏదైనా ఫైల్ పేర్ల ముందు ఇటువంటి అప్పగింత కనిపించినప్పుడు, BEGIN బ్లాక్ అమలు కావడానికి ముందు అప్పగింత జరగవచ్చు. ఈ "లక్షణం" పై ఆధారపడటానికి అనువర్తనాలు వచ్చాయి. "దాని డాక్యుమెంటేషన్కు సరికొత్తగా మార్చబడినప్పుడు, పాత ప్రవర్తన మీద ఆధారపడిన అనువర్తనాలకు అనుగుణంగా కార్యక్రమం అమలుకు ముందు వేరియబుల్స్ను కేటాయించటానికి -v ఎంపికను చేర్చారు. (ఈ లక్షణం బెల్ లాబొరేటరీస్ మరియు GNU డెవలపర్లు రెండింటి ద్వారా అంగీకరించబడింది.)
POSIX స్టాండర్డ్ నుండి అమలు ప్రత్యేక లక్షణాలు కోసం -W ఎంపిక.
వాదనలు ప్రాసెస్ చేస్తున్నప్పుడు, వాదనలు ముగింపుకు సంకేతం చేయడానికి '' - '' ప్రత్యేక ఎంపికను Gawk ఉపయోగిస్తుంది. అనుకూలత మోడ్లో, ఇది గురించి హెచ్చరిస్తుంది కాని నిర్దేశించని ఎంపికలు విస్మరిస్తుంది. సాధారణ ఆపరేషన్లో, అటువంటి వాదనలు AWK ప్రోగ్రాంకు ప్రాసెస్ చేయటానికి పంపబడతాయి.
AWK పుస్తకం srand () యొక్క తిరిగి విలువను నిర్వచించలేదు. POSIX ప్రమాణం రాండమ్ సంఖ్య సీక్వెన్సులను ట్రాక్ చేయటానికి అది ఉపయోగించిన విత్తనాన్ని తిరిగి ఇస్తుంది. అందువలన సాక్రి () గాక్ లో కూడా దాని ప్రస్తుత సీడ్ను తిరిగి ఇస్తుంది.
ఇతర కొత్త ఫీచర్లు: బహుళ- ఎఫ్ ఐచ్చికాల ఉపయోగం (MKS awk నుండి); ENVIRON శ్రేణి; \ a , మరియు \ v ఎస్కేప్ సన్నివేశాలు ( గ్యాక్లో మొదట పని చేసాడు మరియు బెల్ లాబొరేటరీస్ వెర్షన్లోకి తిరిగి పోషించడం); tolower () మరియు toupper () అంతర్నిర్మిత విధులు (బెల్ లాబొరేటరీస్ వెర్షన్ నుండి); మరియు ANSI సి కన్వర్షన్ స్పెసిఫికేషన్స్ ఇన్ printf (బెల్ లాబొరేటరీస్ వర్షన్లో మొదటిది).
చారిత్రక లక్షణాలు
చారిత్రక AWK అమలు యొక్క రెండు లక్షణాలు గోకు మద్దతునిస్తాయి. మొదట, పొడవు () అంతర్నిర్మిత ఫంక్షన్కు వాదన లేకుండా, కానీ కుండలీకరణాలు లేకుండా కూడా కాల్ చేయవచ్చు! అందువలన,
a = పొడవు # పవిత్ర ఆల్గోల్ 60, బాట్మాన్!
గాని అదే ఉంది
a = పొడవు ()
ఒక = పొడవు ($ 0)
POSIX స్టాండర్డ్ లో ఈ లక్షణం "డీప్రికేటెడ్" గా గుర్తించబడింది మరియు కమాండ్ లైన్లో --lint పేర్కొనబడితే దాని ఉపయోగం గురించి హెచ్చరికను Gawk చేస్తుంది .
ఇతర లక్షణం కొనసాగింపు లేదా కొంతకాలం వెలుపల బ్రేక్ స్టేట్మెంట్ల ఉపయోగం, లేదా లూప్ చేయండి. సాంప్రదాయ AWK అమలులు తదుపరి వాడకానికి సమానమైన విధంగా వినియోగించాయి. - సాంప్రదాయం పేర్కొనబడినట్లయితే Gawk ఈ వినియోగానికి మద్దతు ఇస్తుంది.
GNU పొడిగింపులు
Gawk POSIX awk కు పొడిగింపులను కలిగి ఉంది. వారు ఈ విభాగంలో వివరించబడ్డారు. ఇక్కడ పేర్కొన్న అన్ని పొడిగింపులు - ప్రామాణిక ఎంపికలతో గాకను ప్రేరేపించడం ద్వారా నిలిపివేయవచ్చు.
PASIX awk లో gawk యొక్క క్రింది లక్షణాలు అందుబాటులో లేవు.
*
-f ఐచ్చికం ద్వారా పేరు పెట్టబడిన ఫైళ్ళకు పాత్ అన్వేషణ లేదు. అందువల్ల AWKPATH ఎన్విరాన్మెంట్ వేరియబుల్ ప్రత్యేకమైనది కాదు.
*
\ X ఎస్కేప్ సీక్వెన్స్. (ఆపివేయబడింది - అనుబంధం .)
*
Fflush () ఫంక్షన్. (ఆపివేయబడింది - అనుబంధం .)
*
పంక్తులను కొనసాగించగల సామర్థ్యం ? మరియు:. (ఆపివేయబడింది - అనుబంధం .)
*
AWK కార్యక్రమాలలో ఆక్టాల్ మరియు హెక్సాడెసిమల్ స్థిరాంకాలు.
*
ARGIND , BINMODE , ERRNO , LINT , RT మరియు TEXTDOMAIN వేరియబుల్స్ ప్రత్యేకమైనవి కాదు.
*
IGNORECASE వేరియబుల్ మరియు దాని దుష్ప్రభావాలు అందుబాటులో లేవు.
*
FIELDWIDTHS వేరియబుల్ మరియు స్థిర-వెడల్పు ఫీల్డ్ విభజన.
*
PROCINFO శ్రేణి అందుబాటులో లేదు.
*
ఒక సాధారణ వ్యక్తీకరణగా RS ఉపయోగం.
*
I / O రీడైరక్షన్ కోసం ప్రత్యేక ఫైలు పేర్లు అందుబాటులో లేవు.
*
| & సహ-ప్రక్రియలు సృష్టించడానికి ఆపరేటర్లు.
*
శూన్య స్ట్రింగ్ను FS యొక్క విలువగా ఉపయోగించడం మరియు మూడవ వాదన ( విభజించు) వంటి వ్యక్తిగత అక్షరాలు విడిపోగల సామర్థ్యం.
*
దగ్గరగా () ఫంక్షన్కు ఐచ్ఛిక రెండవ వాదన.
*
మ్యాచ్ () ఫంక్షన్కు ఐచ్ఛిక మూడవ వాదన.
*
స్థాన స్పెసిఫైర్లను printf మరియు sprintf () తో ఉపయోగించగల సామర్థ్యం.
*
శ్రేణి మొత్తం కంటెంట్లను తొలగించడానికి తొలగింపు శ్రేణి యొక్క ఉపయోగం.
*
ప్రస్తుత ఇన్పుట్ ఫైల్ యొక్క ప్రాసెస్ను రద్దు చేయడానికి తదుపరి ఫైల్ యొక్క ఉపయోగం.
*
() , స్ట్రింగ్ () , స్ట్రంట్యం () , సిస్టైమ్ () , బస్స్టాక్ట్ () , బింటిక్స్టాండొమైన్ () , ఫిక్స్ట్ () , dcgettext () , జెన్సుబ్ () , lshift () , mktime () , లేదా () మరియు xor () విధులు.
*
స్థానికీకరించగలిగే తీగలను.
*
పొడిగింపు () ఫంక్షన్తో డైనమిక్గా కొత్త అంతర్నిర్మిత ఫంక్షన్లను జోడిస్తుంది.
AWK పుస్తకం సన్నిహిత () ఫంక్షన్ యొక్క తిరిగి విలువను నిర్వచించదు. Gawk యొక్క దగ్గరగా () వరుసగా అవుట్పుట్ ఫైల్ లేదా పైపును మూసివేసినప్పుడు, fclose (3), లేదా pclose (3) నుండి విలువను అందిస్తుంది. ఇన్పుట్ పైపును మూసివేసినప్పుడు ఇది ప్రక్రియ యొక్క నిష్క్రమణ స్థితిని అందిస్తుంది. పేరు, పైప్ లేదా సహ-ప్రక్రియను రీడైరెక్షన్తో తెరిచినట్లయితే తిరిగి విలువ -1.
--traditional ఐచ్చికంతో gawk ఉపయోగించినప్పుడు, -F ఐచ్చికానికి fs వాదనకు `` t '' అయితే, FS టాబ్ అక్షరానికి అమర్చబడుతుంది. Gawk-F \ t టైపింగ్ చేస్తాడని గమనించండి ... `` t, '' అని కోట్ చేయడానికి షెల్ కారణమవుతుంది మరియు -F ఎంపికకు `` \ t '' పాస్ చేయదు. ఇది ఒక కాకుండా అగ్లీ ప్రత్యేక కేసు కాబట్టి, ఇది డిఫాల్ట్ ప్రవర్తన కాదు. --posix పేర్కొనబడినట్లయితే ఈ ప్రవర్తన కూడా జరగదు. నిజంగా ఫీల్డ్ విభజించడానికి ఒక టాబ్ పాత్ర పొందడానికి, సింగిల్ కోట్స్ ఉపయోగించడానికి ఉత్తమ ఉంది: gawk -F '\ t' ....
ఇతర ఆదేశాలను చూడండి : వేచి , lp , complete , execv , getfacl , ioctl , uniq , rmmod , pvcreate , rsh , unix2dos , cal , fs , cd , iwpriv , swapon , autofs , talk , motd , free , lpr , execl , fdisk , at , ఎవరు , iwconfig , ifconfig , vgdisplay , ఓపెన్ , lsmod , ntohs , mailq , చంపడానికి , wtmp