Comment detail
条件を満たす行を取り除く (Nested Flatten)
read は引数を指定しない場合、末尾の改行文字のみを削除します。
「先頭の空白」が無視されるのは、 引数の渡し方によるのではないでしょうか。
単語分割のさいに空白は、なくなります。
echo ”$LINE” のように、クォートしてみてください。
1 2 3 4 5 6 7 8 9 10 11 12 | #! /bin/bash
function echo_if_not_comment(){
[ "${1:0:1}" != '#' ] && echo -n "$1"
}
while read -r; do
if [ -z "$REPLY" ]; then
echo
else
echo_if_not_comment "$REPLY"$'\n'
fi
done
echo_if_not_comment "$REPLY"
|
上の投稿は、 http://ja.doukaku.org/comment/758/ へのコメントとして書いたつもりだったのですが、独立した投稿になってしまったようですね。失礼しました。
修正しました
アドバイスありがとうございます。 問題は read LINE とやっていた事みたいです。
1 2 3 4 5 6 7 8 9 | #!/bin/bash
# 失敗したパターン
# read LINE
# echo "$LINE" | grep -v "^#"
while read -r; do
echo "$REPLY" | grep -v "^#"
done
|





ココサブ
#758()
[
Bash
]
Rating0/2=0.00
grep -v "^#"Rating0/2=0.00-0+
1 reply [ reply ]