0

我写了一个小脚本,它会要求一个目录,然后列出该目录中的目录,只是它总是告诉我没有这样的目录。我可能哪里出错了?

#!/bin/bash
echo -n "Enter a directory to list"
read answer
ls -d $answer
4

2 回答 2

2

问题

您的问题可能是以下一项或多项:

  1. 您没有正确引用您的目录名称。
  2. -d标志只会列出目录本身。
  3. 您可能传递了一个不存在的目录的名称。

解决方案

假设您使用 Bash,您可以更简单地执行此操作。例如:

read -p 'Enter a directory to list: '
ls "$REPLY"
于 2013-03-30T00:33:00.520 回答
0

您可以使用 find 获取目录列表,如果您希望路径中有空格,则需要引用答案:

#!/bin/bash
echo -n "Enter a directory to list"
read answer
find "$answer" -type d
于 2013-03-30T00:42:19.043 回答