avatar

目录
shell 笔记

shell 读取 ini 配置文件

bash
1
2
3
4
5
6
7
function __readINI() {
INIFILE=$1; SECTION=$2; ITEM=$3
_readIni=`awk -F '=' '/\['$SECTION'\]/{a=1}a==1&&$1~/'$ITEM'/{print $2;exit}' $INIFILE`
echo ${_readIni}
}

arg=( $( __readINI filename.ini Section Item ) )

$’\r’: command not found

Issue

$’\r’: command not found
syntax error near unexpected token $’\r’

Solution

这是由于在Windows下换行符是\r\n,而Linux下换行符为\n而导致的报错。
使用dos2unix将Windows下的编码改为Unix下的编码即可。

bash
1
2
3
4
5
6
7
# 安装dos2unix
sudo apt install dos2UNIX
# 对文件'filename.sh',使用dos2unix将Windows下的编码改为Unix下的编码
dos2unix filename.sh

# 反之类似,将Unix下的编码改为Windows下的编码
unix2dos filename.sh
文章作者: Reborn
文章链接: https://reborn8888.github.io/2020/03/13/shell%E7%AC%94%E8%AE%B0/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Reborn
打赏
  • 微信
    微信
  • 支付寶
    支付寶

评论