shell - 参数变量拼接字符串时,错位解决

1.现象

参数

prootName 是解析yml文件获取的数据

现在需要拼接字符串 

echo "删除 ${outputDir}/${prootName}.tar.xz"

打印结果为:

.tar.xz删除 /data/data/com.termux/files/home/mariadb_3306/gh/alpine

很明显错了

2.原因

解析值prootName中存在看不见的隐藏字符导致拼接错误

\r\n\t

3.解决

去掉这些隐藏字符再使用即可

 prootName=$(echo "${prootName}" | tr -d '\r\n\t' | xargs)

 

 

 
posted @ 2025-09-07 18:41  岑惜  阅读(11)  评论(0)    收藏  举报