复制代码 代码如下:
#!/bin/bash
my_name="jxq"
echo $my_name
echo ${my_name}
# ------------------------------------
# 字符串操作
# ------------------------------------
# 单引号字符串的限制,双引号没有这些限制:
# 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
# 单引号字串中不能出现单引号(对单引号使用转义符后也不行)
name="will"
age=24
my_full_name='${name}${age}'
echo ${my_full_name}
my_full_name="${name}${age}"
echo ${my_full_name}
# 字符串拼接
echo ${name}${age}
# 字符串长度
echo ${#name} # 4
# substring
message="I want to be healthy"
echo ${message:2} # want to be health, 2是position
echo ${message:2:4} # want,2是position,4是len
# delete shortest match from front: ${string#substring}
echo ${message#*want}
# delete shortest match from back: ${string%substring}
echo ${message%healthy}
# delete longest match from front: ${string##substring}
echo ${message##*h}
# delete longest match from back: ${string%%substring}
echo ${message%%t*}
# find and replace: ${string/pattern/replacement}
book_name="Catch Eye Eye"
echo ${book_name/Eye/Cat}
# find and replace all match: ${string//pattern/replacement}
echo ${book_name//Eye/Cat}
file_path="/usr/local/bin"
# only replace when pattern match the beginning: ${string/#pattern/replacement}
echo ${file_path/#\/usr/tmp}
# only replace when pattern match the end: ${string/%pattern/replacement}
echo ${file_path/%bin/tmp}
# string index
stringZ=abcABC123ABCabc
echo `expr index "$stringZ" C12` # Mac OSX不支持expr
# ------------------------------------
# 语句
# ------------------------------------
# if
if true
then
echo "ok, true"
fi
# 写成一行
if true; then echo "ok"; fi
var='12'
if [ $var -eq 12 ]; then
echo "This is a numeric comparison if example"
fi
if [ "$var" = "12" ]; then
echo "This is a string if comparison example"
fi
if [[ "$var" = *12* ]]; then
echo "This is a string regular expression if comparison example"
fi
name="jxq"
if [ "$name" = "jxq" ]; then
echo "hello" $name
fi
# 循环语句
for item in `ls *.sh`
do
echo $item
echo "completed"
done
# 写成一行
for item in `ls *.sh`; do echo $item; echo "completed"; done;
counter=1
while :
do
echo "bee"
let "counter=$counter+1"
if [ $counter -eq 3 ]; then
break # break/continue与Java类似
fi
done
# Case语句
opt="install"
case "${opt}" in
"install" )
echo "install..."
exit
"update" )
echo "update..."
exit
*) echo "bad opt"
esac
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 刘欢《雨中的树(新歌加精选)2CD》德国HD24K金碟[WAV+CUE]
- 郑源 《世间情歌》6N纯银SQCD[WAV+CUE][1G]
- 群星《粤潮2HQII》头版限量编号[低速原抓WAV+CUE][991M]
- 群星《2023好听新歌21》十倍音质 U盘音乐[WAV分轨][1G]
- 《热血传奇》双11感恩回馈 超值狂欢30天
- 原神5.2版本活动汇总 5.2版本活动有哪些
- 张敬轩.2010-NO.ELEVEN【环球】【WAV+CUE】
- 黄丽玲.2006-失恋无罪【艾回】【WAV+CUE】
- 阿达娃.2024-Laluna【W8VES】【FLAC分轨】
- 宝可梦大集结段位等级划分表大全 大集结段位一览
- 龙腾世纪影障守护者工坊与装备如何升级 工坊与装备升级说明
- 龙腾世纪影障守护者全成就攻略分享 龙腾世纪4全成就列表一览
- 《剑星》更新四套全新战衣!
- 卡普空老将伊津野英昭宣布入职腾讯光子 开发3A动作
- 38岁梅根·福克斯官宣怀孕:将迎来第四个孩子