Bash多线回声

时间:2012-06-18 06:54:56

标签: linux bash echo ubuntu-12.04

我尝试创建一个脚本来列出目录的内容:

#!/bin/bash
matched=$(ls -1 /data/ | grep $1)
echo $matched

我已将参数-1添加到ls命令,当执行此./script dir时,输出位于一行:

dir1 dir2

我也试过echo -e $matched,但输出结果是:

-e dir1 dir2

那么如何在单独的行中列出每个目录?

1 个答案:

答案 0 :(得分:2)

尝试在字符串周围使用双引号进行回显:

echo "$matched"

这里的引号会导致某些特殊字符被保留;见here

修改:有关更好的解释,请参阅cdarke的评论。