当前位置:网站首页>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
边栏推荐
- Baiwen 7-day smart home learning experience of Internet of things
- Screen record of the opening ceremony of the Beijing winter olympics 2
- Global and Chinese markets of large aperture scintillators 2022-2028: Research Report on technology, participants, trends, market size and share
- Numpy——1. Creation of array
- UEFI development learning 4 - getting to know variable services
- UEFI development learning 3 - create UEFI program
- The research found that the cross-border e-commerce customer service system has these five functions!
- Beijing Winter Olympics opening ceremony display equipment record 3
- Calibre garbled
- Let me teach you how to develop a graphic editor
猜你喜欢
UEFI development learning 2 - running ovmf in QEMU
mysql 盲注常见函数
Altium Designer 19.1.18 - 清除测量距离产生的信息
Acwing-宠物小精灵之收服-(多维01背包+正序倒序+两种形式dp求答案)
Altium designer 19.1.18 - clear information generated by measuring distance
Oracle triggers and packages
Use of orbbec Astra depth camera of OBI Zhongguang in ROS melody
Significance and requirements of semiconductor particle control
Shell脚本基本语法
Train your dataset with yolov4
随机推荐
Numpy——1.數組的創建
A complete set of indicators for the 10000 class clean room of electronic semiconductors
UEFI development learning series
static的作用
Rename directory in C [closed] - renaming a directory in C [closed]
Some errors in configuring the environment
Altium Designer 19.1.18 - 更改铺铜的透明度
Ads learning record (lna_atf54143)
UEFI development learning 5 - simple use of protocol
Markdown tips
RF ride side door processing of prompt box
About the problem that MySQL connector net cannot be cleared in MySQL
导电滑环磨损快的原因
[popular science] some interesting things that I don't know whether they are useful or not
LED display equipment records of the opening ceremony of the Beijing Winter Olympics
How to excavate and research ideas from the paper
Define in and define out
Opendrive arc drawing script
Altium designer 19.1.18 - hide the fly line of a network
Acwing-宠物小精灵之收服-(多维01背包+正序倒序+两种形式dp求答案)