... 必ず:
for i in $( ls -1 ); do echo "$i XXXX"; done
絶対に使用しないでくださいfor i in $(command)。詳細については、この回答を参照してください。
したがって、この元の質問に答えるには、次のようなものを使用できます。
for file in *; do echo "$file XXXX"; done
awk を使用した別のソリューション:
ls -1|awk '{print $0" XXXX"}'
awk '{print $0" XXXX"}' <(ls -1) # with process substitution
sed を使用した別のソリューション:
ls -1|sed "s/\(.*\)/\1 XXXX/g"
sed "s/\(.*\)/\1 XXXX/g" <(ls -1) # with process substitution
そして、ただの楽しみのための役に立たない解決策:
while read; do echo "$REPLY XXXX"; done <<< "$(ls -1)"
ls -1|while read; do echo "$REPLY XXXX"; done