当前位置:网站首页>Shell script basic syntax
Shell script basic syntax
2022-07-05 07:53:00 【Group field】
Mac Under the computer Bash, yes Unix shell A kind of , Developers through shell Script middleware calls the system kernel , So it is necessary for Apple developers to learn .
1 Create and export
1-1 establish Shell file
command :touch hello.sh
1-2 Definition file declaration
#!/bin/bash
#!: Indicates the Convention mark , He will tell the system what kind of interpreter this script needs to execute , It is both a script embodiment .'#' notes , Be careful : stay Shell Script , No multi line gaze , Only single line comments .
echo “Hello world!”
1-3 perform Shell Script hello file
command :./hello.sh
View and modify file permissions
View command :ls -l hello.sh
Modify the order : chmod +x ./hello.sh
-rwxr-xr-x
1-4 Variable operating
- There should be no spaces in the assignment
name="Kenny"Can not writename = "Kenny"
Variable names must start with ‘a-z’ or ‘A-Z’ See the letter of , Read only variables cannot be modified , tastereadonly name - Delete variables
unset name - Special variables
${0}: File name${?}: Indicates the return value of the execution status of the previous command$#: Number of parameters$*: parameter list , Composite string[email protected]: parameter list$$: Go back to the current shell Conduct ID$!: Execute last instruction PID
1-5 String splicing 、 Intercept 、 Delete
- Splicing
#!/bin/bash
name='Andy'
age=100
sex=" male "
info=" full name :'${name}' Age :'${age}' Gender :'${sex}' "
echo ${info}
- Intercept
Variable name : start : end , result ’have’
name="I have a Dream"
result=${name:2:4}
echo ${result}
Find the length of the variable length=${#name}-1
The end position may not be written , To the end
name="I have a Dream"
result=${name:5:length-1}
echo ${result}
- Delete
# Grammar 1 :${ Variable name # Delete string Regular expressions }Delete from the first## Grammar II :${ Variable name ## Delete string Regular expressions }Delete from the last% Grammar 3 :${ Variable name % Delete string Regular expressions }Find the first of the specified characters , And delete all the previous characters ( Include yourself )%% Grammar 3 :${ Variable name %% Delete string Regular expressions }Find the last of the specified character , And delete all the previous characters ( Include yourself )
Delete range : Delete from left to right
#-> Indicates that the query direction is from left to right
%-> Indicates that the query direction is from right to left
Delete range : Delete from right to left
##-> Indicates that the query direction is from right to left
%%-> Indicates that the query direction is from left to right
Case a : Find the first of the specified characters , And delete all the following characters ( Include yourself )
# Look for the first one from the left , And delete all the previous characters ( Include yourself )
name="I have a Dream"
result=${name#*a}
echo ${result}
result
ve a Dream
## Look for the first one from the right , And delete all the previous characters ( Include yourself )
name="I have a Dream"
result=${name##*a}
echo ${result}
result
m
Case 2 : Find the first of the specified characters , And delete all the following characters ( Include yourself )
% Look for the first one from the right , And delete all the following characters ( Include yourself )
name="I have a Dream"
result=${name%a*}
echo ${result}
result
I have a Dre
%% Look for the first one from the left , And delete all the following characters ( Include yourself )
name="I have a Dream"
result=${name%%a*}
echo ${result}
result
I h
边栏推荐
- Opendrive ramp
- 1089 Insert or Merge 含测试点5
- [MySQL] database knowledge record
- TCP and UDP
- High end electronic chips help upgrade traditional oil particle monitoring
- IC software learning
- Nombre - 1. Création de tableaux
- A simple method to prove 1/t Fourier transform
- Global and Chinese markets for waste treatment air switches 2022-2028: Research Report on technology, participants, trends, market size and share
- Acwing-宠物小精灵之收服-(多维01背包+正序倒序+两种形式dp求答案)
猜你喜欢

Oracle triggers and packages

Altium Designer 19.1.18 - 隐藏某一个网络的飞线

Altium designer 19.1.18 - clear information generated by measuring distance

Altium designer 19.1.18 - hide the fly line of a network

A complete set of indicators for the 10000 class clean room of electronic semiconductors

Cadence simulation encountered "input.scs": can not open input file change path problem

What is Bezier curve? How to draw third-order Bezier curve with canvas?

LED display equipment records of the opening ceremony of the Beijing Winter Olympics

Altium Designer 19.1.18 - 导入板框

研究发现,跨境电商客服系统都有这五点功能!
随机推荐
. Net service governance flow limiting middleware -fireflysoft RateLimit
solver. Learning notes of prototxt file parameters
Ads usage skills
From then on, I understand convolutional neural network (CNN)
IC software learning
Day08 ternary operator extension operator character connector symbol priority
Use of orbbec Astra depth camera of OBI Zhongguang in ROS melody
Create inf module in AMI code
Apple system shortcut key usage
Altium Designer 19.1.18 - 清除测量距离产生的信息
How to migrate the device data accessed by the RTSP of the easycvr platform to easynvr?
Altium designer 19.1.18 - hide the fly line of a network
Global and Chinese market of core pallets 2022-2028: Research Report on technology, participants, trends, market size and share
Practical application cases of digital Twins - fans
Software designer: 03 database system
[professional literacy] core conferences and periodicals in the field of integrated circuits
Extended application of single chip microcomputer-06 independent key
Leetcode solution - number of islands
How to excavate and research ideas from the paper
A complete set of indicators for the 10000 class clean room of electronic semiconductors