终端OSX - 拉链
问题描述:
内呼啸而过的名称文件提取我是新手 - 我再也找不到像我这样的问题,所以希望不是因为太明显...终端OSX - 拉链
(随着终端osx)我的目标是解压缩到当前目录中的特定文件夹中具有2个拉链级别的特定名称的所有文件,并清除除指定文件夹以外的所有文件。
结构是:
- 瓷砖_ ## ZIP
- ASTGTM2_#1#名为.zip
- ASTGTM2_#1_1#_dem.tif
- ASTGTM2_#1_2#_num。 .tif
- ASTGTM2_#2#.zip
- ASTGTM2_#2-2#_dem.tif
- ASTGTM2_#2-2#_num.tif
- ASTGTM2_#,3#名为.zip ...
- ASTGTM2_#1#名为.zip
在名_# Number#,#Number#是一系列识别每个文件的字母和数字。
在 '伪指令':
unzip Tiles_*.zip | unzip ASTGTM2_*.zip | mkdir DEM | mv **/*_dem.tif ./DEM | rm -r But_DEM
我有没有成功不同convinations试过......
我在做什么错?
答
也许是这样的:
mkdir tmp DEM
for i in Tiles_*.zip; do unzip $i -d tmp; done
for i in tmp/ASTGTM2_*.zip; do unzip $i -d DEM; done
rm -rf tmp
它使用-d
选项指定的目录中提取文件。
+0
谢谢nneonneo!这是一个很好的选项,可以将所有父母邮件中的所有内容上传到DEM文件夹中。我想更进一步,但是,在DEM文件夹中只留下* _dem.tif文件。我正在尝试,但目前尚未进行管理...... – Ge0Da
答
好吧,明白了......感谢使用nneonneo语法,我不知道。
mkdir tmp ZIPs DEMs
for i in Tiles_*.zip; do unzip $i -d ZIPs; done
for i in ZIPs/ASTGTM2_*.zip; do unzip $i -d tmp; done
for i in tmp/ASTGTM2_*/*_dem.tif; do mv $i -d DEMs; done
rm -rf tmp ZIPs *.zip
这使得所有的* _dem.tif文件到一个新的文件夹,数字高程模型,并删除所有的休息
不过它看起来有点太长了,不是很优雅,但它的工作.. 。
您可以使用'-p'组合提取到'stdout'(用于管道)和通配符用于解压缩文件。阅读手册。 –