|
马上注册,下载丰富资料,享用更多功能,让你轻松玩转阳光石油论坛。
您需要 登录 才可以下载或查看,没有账号?欢迎注册
x
本帖最后由 773377 于 2015-6-25 18:44 编辑
郝哥好。
我的编程技巧不好,最近遇到一个需要多次重复手工工作的问题,我想应该能用workflow解决,但是一直没有找到合适的方法。
问题是这样的:
sgy文件原始地址格式:
D:\seismic\abc123\final migration\abc123-1.sgy
D:\seismic\abc123\final migration\abc123-2.sgy
D:\seismic\abc123\final migration\abc123-3.sgy
……
D:\seismic\abc123\raw migration\abc123-1.sgy
D:\seismic\abc123\raw migration\abc123-2.sgy
D:\seismic\abc123\raw migration\abc123-3.sgy
……
D:\seismic\xyz789\final migration\xyz789.sgy
……
数据在阵列上的储存位置就是这样的,我用红色表示survey name,蓝色表示vintage。
现在,我要把以上所有数据全部导入Petrel的相应survey文件夹里,并赋予正确的vintage。我已经通过workflow批量建立了一系列survey folder,在每一个survey folder下方建立了final migration, raw migration的子目录。
在编写导入workflow的时候出现了问题。
survey名,subfolder名,vintage名,这至少需要3个变量。其中vintage名和subfolder名应该是对应相同的。但是在引入变量的时候,一个变量只能对应一种对象,比如变量A指定为subfolder的 final migration, 变量B指定为vintage的 final migration, 这两个是不能互换的,而使用Get name函数只能获得一个字符串,如何才能用字符串将subfolder和vintage联系起来呢?不能联系起来的话,就没有办法将磁盘上final migration下的sgy文件,导入到对应survey下的final migration目录,赋予final migration的vintage了。
另外,使用import seismic的时候,path框里是不能使用“*”,“?”这些通配符的,不然会提示路径错误,也没法引入变量或reference list,这样如果一个目录下有几十条测线,难道要分别建立几十条命令吗?
|
|