小编典典

如何将 shell 命令应用于命令输出的每一行?

all

假设我有一些命令的输出(例如ls -1):

a
b
c
d
e
...

我想echo依次对每个命令应用一个命令(比如)。例如

echo a
echo b
echo c
echo d
echo e
...

在 bash 中最简单的方法是什么?


阅读 62

收藏
2022-05-26

共1个答案

小编典典

它可能是最容易使用的xargs。在你的情况下:

ls -1 | xargs -L1 echo

-L标志确保正确读取输入。从手册页xargs

-L number
    Call utility for every number non-empty lines read. 
    A line ending with a space continues to the next non-empty line. [...]
2022-05-26