|
|
|
|
|
by edgyquant
1673 days ago
|
|
For me I always used for loops and only recently (after a decade of using Linux daily) have learned about the power of piped-loops. It’s strange to me you are more comfortable with those than for loops, but I think it does make sense as you’re letting a program generate the list to iterate over. A pain point in for loops is getting that right, e.g. there isn’t a good way to iterate over files with spaces in them using a for loop (this is why I learned about piped loops recently.) |
|
If those files came as arguments, you can use a for-loop as long as they're kept in an array:
That handles even newlines in the filenames, while I'm not sure if you can handle that with a while-read-loop. IFS=$'\0' doesn't seem to cut it.for-loops seem preferable for working with filenames. If a command is generating the list, then something like `xargs -0` is preferable.