在.sh文件中的tar搜索结果
我必须tar一个没有路径的文件列表,这是通过sh查找(用于crontab使用)的结果。在.sh文件中的tar搜索结果
在ubuntu的shell中,每个命令都可以正常工作,但在.sh
不是。
我试着用:
#!/bin/sh
tar -zcvf /destination/one-$(date +"%Y%m%d").tgz < find /myfolder/ -iname 'one*' -printf '%f\n'
而且还与
#!/bin/sh
find /myfolder/ -iname 'one*' -print0 | tar -czvf /destination/one-$(date +"%Y%m%d").tar.gz --null -T -
但都失败了。有人可以帮忙吗?备择方案 ?
附加场景信息:
- /MyFolder中/载:
- one1.log
- one2.log
- one3.log
- two1.log
- two2。日志
我想one.tgz含one1.log,one2.log,one3.log
我认为你正在寻找的文件名传递给tar
上stdin
:
find . -name \*.png -print0 | tar -cv --null -T- -f tarball.tar
在我的情况:
find /myfolder/ -iname "one*" -print0 | tar -czv --null -T- -f /destination/one-$(date +"%Y%m%d").tar.gz
不是远离我的第二个尝试:find/myfolder/-iname'one *'-print0 | tar -czvf/destination/one - $(date +“%Y%m%d”)。tar.gz --null -T- 这也行不通 –
试着用'-f'结尾我做到了。 –
这不起作用:find/myfolder/-iname'one *'-print0 | tar -cv --null -T -f/destination/one - $(date +“%Y%m%d”)。tar 它创建一个没有内容的tar文件 –
看起来很好,但可能会将tar命令中的destination/...目录更改为绝对路径。像'tar -czvf/your/folder/path/destination/one - $ .....' – JNevill
我的错误报告.sh变量值:in .sh路径来自一个变量:DESDIR =/app/zips –