当前位置:网站首页>Shell_ 07_ Functions and regular expressions
Shell_ 07_ Functions and regular expressions
2022-07-06 16:51:00 【Coke loving w】
Shell_07_ Functions and regular expressions
function
function : Script code block , You can call... From anywhere by function name
1) Functions are divided into function library functions and user-defined functions , And the function name is unique ;
2) The function to be called must be created ;
3) When the function is finished , Will return a status code
// Select the return status code or return Specified value of the command
Custom function
function: Create functions in the script file
Command format :
function Function name (){
Procedures section
}
(1)retun The command can end the function in advance , And return the specified status code
1) The range of directly specified values is :0~255( If more than 255, Then find the remainder 256)
(2) The default variable for each function is :
1)$0 Represents the function name
2)$1 Represents the first function parameter 、$2 Represents the second function parameter ( And so on )
(3) adopt local command , You can specify local variables inside the function
1)Shell Variables created in the script , Default to global variable
(4) If the defined function is repeated , Then the latter function will overwrite the former function
Such as : establish show123.sh The script file will one、two、three Convert to 1、2、3
1) To write show123.sh Script files
2) call show123.sh Script files
Such as : adopt result The command returns the status code
1) To write test25.sh Script files ;
2) call test25.sh Script files
Such as : Create local variables in functions
1) To write test31.sh Script files
2) call test31.sh Script files
Regular expressions
Pattern template (Pattern Template): Filter the required data in the data stream through regular expressions
Regular expressions : Operate on strings in behavioral units
1) Regular expressions are divided into : Basic regular expressions 、 Extended regular expression
2) Different languages may lead to different results for the same regular expression
3) Regular symbols in gawk In command , It needs to be added at the beginning and end “/” Symbol
Matching is divided into : Greedy matching ( Default )、 Non greedy matching
1) Greedy matching : When multiple results match successfully , Select the one with the most successful matching data ;
2) Non greedy matching : When multiple results match successfully , Select the one with the least successful matching data ;
// Add “?” Symbol , That is, non greedy matching
POSIX Basic regular expressions (Basic Regular Expression,BRE):
Basic regular symbols | analysis |
---|---|
^ | meaning : At the beginning of the line Example : Find a line beginning with # The line of , And the output demonstration :grep ‘^#’ test.txt |
$ | meaning : At the end of the line Example : Find a line ending with # The line of , And the output demonstration :grep ‘#$’ test.txt |
. | meaning : There must be an arbitrary character for Example : Find out what contains eve、eae、e e The line of , And the output ( A space is also a character ) demonstration :grep ‘e.e’ test.txt |
* | meaning : Represents the subsequent occurrence of the previous character 0 Times and any number of times Example : Find out what contains es、ess、essss The line of , And the output demonstration :grep ‘ess*’ test.txt |
\ | meaning : Remove the special meaning of special symbols Example : Find out what contains ^ The line of , And the output demonstration :grep \^ test.txt |
[ ] | meaning : Find all lines of example characters Example : Find out what contains aay、afy、aly The line of , And the output demonstration :grep ‘a[alf]y’ test.txt |
meaning : Find lines within the character range Example : Find lines with uppercase letters demonstration :grep ‘[A-Z]’ test.txt | |
{ } | meaning : lookup n To m Lines of characters in a range Example : lookup g To d contains 2 To 5 individual o The line of , And the output demonstration :grep ‘go\{2,5\}d’ test.txt |
meaning : Find out what contains n Character lines Example : lookup g To d contains 3 individual o The line of , And the output demonstration :grep ‘go\{3\}d’ test.txt | |
meaning : Find at least n Character lines Example : lookup g To d contains 3 individual o The above line , And the output demonstration :grep ‘go\{3,\}d’ test.txt | |
[^] | meaning : Represents not containing a character Example : Find a file that does not contain test The line of , And the output demonstration :grep ‘[^test]’ test.txt |
POSIX Extended regular expression (Extended Regular Expression,ERE):
Extended regular symbol | analysis |
---|---|
+ | meaning : Represents the subsequent occurrence of the previous character 1 Times and any number of times Example : Find out what contains esd、essd、essssd The line of , And the output demonstration :grep +E ‘es+d’ test.txt |
? | meaning : Represents the subsequent occurrence of the previous character 0 Secondary sum 1 Time Example : Find out what contains gd、god The line of , And the output demonstration :grep +E ‘go?d’ test.txt |
| | meaning : For or on behalf of Example : Find out what contains gd or god or good The line of , And the output demonstration :grep +E ‘gd | god | good’ test.txt |
( ) | meaning : Represents the combination of multiple characters Example : Find out what contains glad and good The line of , And the output demonstration :grep +E ‘g(la | oo)d’ test.txt |
( )+ | meaning : Represents multiple repeated combined characters Example : Find out what contains A123123123123C The line of , And the output demonstration :grep +E ‘A(123)+C’ test.txt |
边栏推荐
- 字节跳动技术新人培训全记录:校招萌新成长指南
- China tetrabutyl urea (TBU) market trend report, technical dynamic innovation and market forecast
- Record the error reason
- 「博士毕业一年,我拿下 ACL Best Paper」
- Chapter 5 yarn resource scheduler
- Error: case label `15 'not within a switch statement
- Data config problem: the reference to entity 'useunicode' must end with ';' delimiter.
- SQL快速入门
- 两个礼拜速成软考中级软件设计师经验
- JS encapsulates the method of array inversion -- Feng Hao's blog
猜你喜欢
7-5 blessing arrived
Native JS realizes the functions of all selection and inverse selection -- Feng Hao's blog
SQL quick start
字节跳动技术新人培训全记录:校招萌新成长指南
One hundred questions of image processing (1-10)
Spark独立集群动态上线下线Worker节点
~76 sprite map
7-10 punch in strategy
The most lost road I have ever walked through is the brain circuit of ByteDance programmers
Eureka single machine construction
随机推荐
~81 long table
FLV格式详解
Market trend report, technical innovation and market forecast of tabletop dishwashers in China
「博士毕业一年,我拿下 ACL Best Paper」
Chapter 1 overview of MapReduce
~78 radial gradient
Solve the problem of intel12 generation core CPU [small core full, large core onlookers] (win11)
Use JQ to realize the reverse selection of all and no selection at all - Feng Hao's blog
视频压缩编码和音频压缩编码基本原理
Hbuilder x format shortcut key settings
LeetCode 1551. Minimum operand to make all elements in the array equal
字节跳动2022校招研发提前批宣讲会,同学们最关心的10个问题
Investigation report of bench type Brinell hardness tester industry - market status analysis and development prospect prediction
7-10 punch in strategy
Basic principles of video compression coding and audio compression coding
Research Report on hearing health care equipment industry - market status analysis and development prospect prediction
7-5 blessing arrived
我走过最迷的路,是字节跳动程序员的脑回路
谢邀,人在工区,刚交代码,在下字节跳动实习生
我走過最迷的路,是字節跳動程序員的腦回路