我如何让
例如,我定义了一个类似于 bzip2 的函数,但使用 7z:
find
命令在其 exec 参数中应用我的 shell 定义的函数和别名?例如,我定义了一个类似于 bzip2 的函数,但使用 7z:
当我查找需要压缩的文件时,这个函数会在其中发挥作用:function 7zip() { for f in $@; do ls -alF "$f"; 7za a -t7z -m0=lzma -mx=9 -mfb=64 -md=64m -ms=on "$f.7z" "$f" && touch -r "$f" "$f.7z" && rm -fv "$f" && ls -alF "$f.7z"; done; }
find . -mtime +7 -name "G*.html" -execdir 7zip {} +
在一个shell脚本中,如果要扩展7zip,会出现“命令未找到”的错误。
~/.bashrc
中定义和export -f 7zipi
2. 使用find ... -exec bash -c "7zipi {}" +
- Marcosfind . -mtime +7 -name "G*.html" -execdir bzip2 -9v {} \;
,因为在这些较小的文件大小下,它提供了稍微更好的压缩效果,并且 .bz2 是 UNIX 中更容易处理的格式,以便以后解压缩。 - Marcos