我对Korn shell语法感到困惑。我需要读取当前目录的所有文件并将它们分配给一个数组。然而。我需要排除目录。下面的代码也包含了我不想要的目录。另外,我无法将文件名分配给我的数组。
fileCount=0
for fileName in ./*
do
echo -n 'file = '; echo $fileName
#$fileNameArr[$fileCount] = $fileName #how do I do this?
let fileCount+=1
done
THX!
答案 0 :(得分:2)
在ksh中,没有循环只有一行:
set -A filenameArr ./*
但是数组中元素的数量是有限的 - 请参阅ksh手册页,了解您的ksh版本。
我在HPUX 10上使用的版本有1024,其他一些版本可能有4096.首先检查,ksh不是基本上无限数量的元素。
您在数组中存储的文件名数量为:echo ${#filenameArr[*]}