不使用 ls 列出檔案

使用 Bash shell 的檔名擴充套件大括號擴充套件功能來獲取檔名:

# display the files and directories that are in the current directory
printf "%s\n" *

# display only the directories in the current directory
printf "%s\n" */

# display only (some) image files
printf "%s\n" *.{gif,jpg,png}

要將檔案列表捕獲到變數中進行處理,通常最好使用 bash 陣列

files=( * )

# iterate over them
for file in "${files[@]}"; do
    echo "$file"
done