当前位置:网站首页>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 |
边栏推荐
- Mp4 format details
- LeetCode 1640. Can I connect to form an array
- ~81 long table
- ByteDance new programmer's growth secret: those glittering treasures mentors
- Sublime text code formatting operation
- Investigation report of bench type Brinell hardness tester industry - market status analysis and development prospect prediction
- Chapter III principles of MapReduce framework
- ~71 abbreviation attribute of font
- 亮相Google I/O,字节跳动是这样应用Flutter的
- ~78 radial gradient
猜你喜欢
第2章 HFDS的Shell操作
LeetCode 1558. Get the minimum number of function calls of the target array
Chapter 7__ consumer_ offsets topic
Spark独立集群Worker和Executor的概念
简单尝试DeepFaceLab(DeepFake)的新AMP模型
Chapter 6 datanode
~87 animation
Mp4 format details
JS encapsulates the method of array inversion -- Feng Hao's blog
~86m rabbit practice
随机推荐
~84 form supplement
Research Report on market supply and demand and strategy of China's four flat leadless (QFN) packaging industry
字节跳动技术新人培训全记录:校招萌新成长指南
Submit several problem records of spark application (sparklauncher with cluster deploy mode)
Chapter 6 rebalance details
Codeforces Global Round 19
Simple records of business system migration from Oracle to opengauss database
第5章 消费者组详解
Solve the problem of intel12 generation core CPU [small core full, large core onlookers] (win11)
Error occurred during initialization of VM Could not reserve enough space for object heap
~87 animation
~78 radial gradient
CMake Error: Could not create named generator Visual Studio 16 2019解决方法
ByteDance open source Gan model compression framework, saving up to 97.8% of computing power - iccv 2021
简单尝试DeepFaceLab(DeepFake)的新AMP模型
Chapter III principles of MapReduce framework
谢邀,人在工区,刚交代码,在下字节跳动实习生
LeetCode 1636. Sort the array in ascending order by frequency
字节跳动2022校招研发提前批宣讲会,同学们最关心的10个问题
ByteDance 2022 school recruitment R & D advance approval publicity meeting, students' top 10 issues