字符串与正则
小于 1 分钟linuxcentos
文件名移除空格
简单方法移除空格
#!/bin/bash
aa="jy0101 cc.mp4"
file=${aa// /}
echo "移除空格后的文件名:${file}"
函数中移除空格
#!/bin/bash
# 以字符串中的空格作为间隔构建数组并返回
function getArr(){
echo "功能函数传入参数数量:$#"
echo "传入参数是:$1"
local file=""
for item in $@; do
file="${file}${item}"
done
echo ${file}
}
getArr "jy0101 cc.mp4"
解析文件名字符串
#!/bin/bash
parseFileNameArr(){
# 带有后缀名的文件名,没有路径
local fileName=$1
fileNameArr=(${fileName//./ })
len=${#fileNameArr[*]}
fileNameOnlyPre=""
for ((i=0;i<${len}-1;i++)); do
fileNameOnlyPre="${fileNameOnlyPre}${fileNameArr[${i}]}."
done
lenPre=${#fileNameOnlyPre}
fileNameOnlyPre=${fileNameOnlyPre:0:lenPre-1}
echo "纯文件名:${fileNameOnlyPre}"
echo "后缀名:${fileNameArr[${len}-1]}"
}
parseFileNameArr "jy0101.ff.mp4"
拼接字符串
#!/bin/bash
name="Shell"
url="http://c.biancheng.net/shell/"
str1=$name$url #中间不能有空格
str2="$name $url" #如果被双引号包围,那么中间可以有空格
str3=$name": "$url #中间可以出现别的字符串
str4="$name: $url" #这样写也可以
str5="${name}Script: ${url}index.html" #这个时候需要给变量名加上大括号
echo $str1
echo $str2
echo $str3
echo $str4
echo $str5
