我有一个sh脚本:
#!/bin/sh
dirs=( $(find . -maxdepth 1 -type d -printf '%P\n') )
echo "There are ${#dirs[@]} dirs in the current path"
let i=1
for dir in "${dirs[@]}"; do
echo "$((i++)) $dir"
done
answer=2
echo "you selected ${dirs[$answer]}!"
但我错了:
symfonymenu.sh:语法错误:“(”意外(应为“}”)
是线…德尔斯=
我喜欢回显文件夹中的所有可用目录,用户可以在提示界面中选择它。
最佳答案
您使用bash shell的特性,因此应该在bash中执行脚本。将第一行更改为:
#!/bin/bash
/bin/sh
可以是任何与posix兼容的shell,例如在ubuntu上是dash。关于linux - shell sh-Script中的目录列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18674213/