将while循环重写为while循环

时间:2015-06-17 15:21:54

标签: bash for-loop while-loop

作为课堂练习,我的教授要求班级将此for循环(可行)重写为while循环或until循环。任何帮助将不胜感激。

#!/bin/bash

set -x

#go to home directory
cd ~

for entry in `ls`
do  
    if [ -d "$entry"] ; then
        echo "Dir: $entry"
    else
        echo "File: $entry"
    fi  
done

1 个答案:

答案 0 :(得分:0)

这是1:1映射到您的示例( SAME限制:例如文件名中没有\ n字符):

#!/bin/bash

while read -r entry
do
    if [ -d "$entry" ]; then
        echo "Dir : $entry"
    else
        echo "File: $entry"
    fi
done < <(ls)