bash脚本没有看到文件

时间:2014-12-20 00:41:03

标签: linux bash

有人可以向我解释为什么这不起作用吗?

ls ~\确实显示cheatsheet位于主目录

  1 #! /bin/bash
  2         let i=0
  3         cheatsheet="~/cheatsheet"
  4         until [ $i -eq $# ]
  5         do
  6                 grep -e $"$i" -e "^\s" $cheatsheet
  7                 i=$(expr $i + 1 )
  8         done    
  9         if [ -z $1  ]
 10         then 
 11                 grep -e "^\w" $cheatsheet
 12         fi 

2 个答案:

答案 0 :(得分:1)

Tilde不会在双引号变量上下文中扩展。您可以使用$HOME之类的

cheatsheet="$HOME/cheatsheet"

答案 1 :(得分:1)

尝试

cheatsheet = "$HOME/cheatsheet"

注意:~不能用于变量。