逐行打印bash脚本中的git日志



我想在bash脚本中逐行打印git日志,当前脚本输出在一行中,我想需要通过某种方式进行拆分,但无法工作!

#!/bin/bash
x=$(git log --oneline --no-merges -n 5)
echo $x
IFS=$'n' lines=( $(echo $x) )
for line in lines; do
echo $line
done
git log --oneline --no-merges -n 5 | while IFS= read -r line
do
echo "$line"
done

假设在现实中,您计划用其他东西替换该回声(否则,anubhava的评论适用:我的代码相当于git log | cat,其中| cat是一个无用的卷积。

或者,替代方法,

exec < <(git log --oneline --no-merges -n 5)
while IFS= read -r l
do
echo "$l"
done

最新更新