
我试图用多个命令使用find -exec,但没有任何成功。有人知道是否可以使用下列命令吗?
find *.txt -exec echo "$(tail -1 '{}'),$(ls '{}')" ;
基本上,我试图在当前目录中打印每个txt文件的最后一行,并在行尾打印一个逗号,后面跟着文件名。
find 接受命令的多个 -exec `部分。例如:
find . -name "*.txt" -exec echo {} ; -exec grep banana {} ;
注意在这种情况下,第二个命令只有在第一个命令成功返回时才会运行,如@Caleb所述。如果你希望这两个命令不管成功或失败都运行,你可以使用这个结构:
find . -name "*.txt" ( -exec echo {} ; -o -exec true ; ) -exec grep banana {} ;
find . -type d -exec sh -c "echo -n {}; echo -n ' x '; echo {}" ;
未经作者同意,本文严禁转载,违者必究!




近期评论