Shell 如何将一个命令的输出传递给另一个命令&;如何仅删除commad结果中没有的文件?

Shell 如何将一个命令的输出传递给另一个命令&;如何仅删除commad结果中没有的文件?,shell,Shell,我正在为以下场景编写shell脚本:1)查找在2周(或更长时间)之前修改过的日志文件。2)从此输出中查找当前正在使用的日志文件。3)删除未使用的文件。为此,我尝试了以下命令:1)find/tmp/.log-mtime+14 | xargs/usr/shraddha/backup 2)lsof-c umaiproxy | grep/usr/shraddha/backup。这是给我的结果前2周修改文件,但目前正在使用。但我不想将第一个命令的结果保存在目录中。相反,我希望将第一个命令的输出作为输入传递

我正在为以下场景编写shell脚本:1)查找在2周(或更长时间)之前修改过的日志文件。2)从此输出中查找当前正在使用的日志文件。3)删除未使用的文件。为此,我尝试了以下命令:1)find/tmp/.log-mtime+14 | xargs/usr/shraddha/backup 2)lsof-c umaiproxy | grep/usr/shraddha/backup。这是给我的结果前2周修改文件,但目前正在使用。但我不想将第一个命令的结果保存在目录中。相反,我希望将第一个命令的输出作为输入传递给第二个命令。以及如何编写命令来删除结果中没有的文件

将第一个命令的输出存储在变量中,例如

TEMP=`command1`
然后将此变量传递给第二个命令,例如

command2 <<< $TEMP

command2第一个命令的结果是问题中提到的文件列表。因此,我必须从该列表中找出当前正在使用的文件。并删除未使用的文件。我如何做到这一点?您可以使用“$TEMP”在多行中列出变量值。>对于“$TEMP”>do>rm$i>done中的i