我正在尝试修改ksh脚本以打印出包含短语“/ var / corefiles”的行。我对脚本很新,所以这让我感到不安。例如,如果我在文件中有以下行
/dev/x /dev/x2 /var/corefiles yes
我用它来循环:
for $host in $(grep "var/corefiles" $VFSTAB_LOC); do
echo $i
done
输出:
/dev/x
/dev/x2
/var/corefiles
yes
我有点困惑为什么它一次只打印出一个块。如果有人有任何解释/修改,他们将非常感激!
答案 0 :(得分:4)
简单地执行grep "var/corefiles" $VFSTAB_LOC
(没有for
或echo
)就会完全按照您的意愿行事。
答案 1 :(得分:0)
grep "var/corefiles" $VFSTAB_LOC | while read line; do
echo "$line"
done
或最近的bashes
readarray mylines < grep "var/corefiles" $VFSTAB_LOC
for line in "${mylines[@]}"; do
echo "$line"
done
击> <击> 撞击>