Bash选择忽略空格

时间:2013-09-18 15:55:48

标签: bash ubuntu

所以我正在尝试创建一个bash脚本,为目录中的每个文件执行某些操作。这是我的剧本。问题是这个脚本在每个空间上分开,我宁愿将它拆分在新行上。所以它看起来就像ls print。 (我要把其他代码放在do里面,echo只是一个测试)

#! /bin/bash
for file in $(ls)
do
    echo $file
done

那么我该如何解决这个问题?

2 个答案:

答案 0 :(得分:5)

您最好避免使用lsWhy you shouldn't parse the output of ls)的结果。

相反,做一些事情:

for file in /your/dir/*
do
   echo "$file"
done

答案 1 :(得分:0)

仅选择文件:

while read -r file; do
    echo "$file"
done < <(exec find -xtype f -maxdepth 1 -mindepth 1)

或者只是过滤它们

for file in *; do
    [[ -f $file ]] || continue
    echo "$file"
done
相关问题