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