0
現有陣列我有腳本,其存儲在一個陣列的文件的列表如下所示空在KSH
set -A my_array $(ls -tr $INPUT_DIRECTORY/*)
我必須清空該my_array
變量將其用於其他目的。我無法聲明另一個新數組。
有什麼方法可以清除數組的內容並重新使用它?
在此先感謝。
現有陣列我有腳本,其存儲在一個陣列的文件的列表如下所示空在KSH
set -A my_array $(ls -tr $INPUT_DIRECTORY/*)
我必須清空該my_array
變量將其用於其他目的。我無法聲明另一個新數組。
有什麼方法可以清除數組的內容並重新使用它?
在此先感謝。
既然你已經使用set -A
...清除陣列可以發出:
set -A my_array
要重新使用數組:
set -A my_array $(command to generate new data set)
例如:
$ cd/
$ set -A my_array $('ls' -tr sys)
$ echo ${my_array[@]}
kernel devices module bus class fs block power firmware dev
$ set -A my_array $('ls' -tr var)
$ echo ${my_array[@]}
opt crash X11R6 mail games yp spool lib adm cache lock tmp log run
$ set -A my_array
$ echo ${my_array[@]}
<<no output>>
或者你可以使用循環構造,例如:
for i in ${!my_array[@]}
do
unset my_array[${i}]
done
例如:
$ set -A my_array $('ls' -tr var)
$ echo ${my_array[@]}
opt crash X11R6 mail games yp spool lib adm cache lock tmp log run
$ for i in ${!my_array[@]}
do
unset my_array[${i}]
done
$ echo ${my_array[@]}
<<no output>>