Shell Bad substitution的解决方法

原因:两种shell语言解释器 bash和dash

在ubuntu 中运行 

    Description=$(apt show $1 |grep Description)
    Description=${Description##*:}
    Description=${Description//\,/\.}

报错:Bad substitution

解决方法:

查看当前/bin/sh 指向哪种解释器:

1

2

3

ls /bin/sh -al

lrwxrwxrwx 1 root root 4 Mar 26 2018/bin/sh -> dash

修改bin/sh指向为bash:

1

sudo ln -fs/bin/bash /bin/sh

或者运行 sudo dpkg-reconfigure dash 后选择NO


版权声明:本文为linpengzt原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。