开发者社区> 问答> 正文

shell脚本中ls、cd等命令不能识别函数传递的变量?

脚本如下:
aaa

#!/bin/bash

view()
{
ls $1
ls $dir
ls  ~/bakup/$new
}


read -p "选择目录的名称:" new
if [ -e ~/bakup/$new  ]
then
echo 
dir="~/bakup/$new"
view  $dir
fi
执行命令 sh aaa
输入 20151215
报错如下
ls: cannot access ~/bakup/20151215: No such file or directory
ls: cannot access ~/bakup/20151215: No such file or directory
wb

只有第三种方式显示正常,是什么原因呢?

展开
收起
a123456678 2016-06-23 15:26:04 4413 0
1 条回答
写回答
取消 提交回答
  • ""中的~不会被展開成$HOME

    2019-07-17 19:46:25
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Shell 脚本速查手册 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载