각 zip 폴더를 살펴보고 해당 폴더의 파일 이름 목록을 가져와 단일 테이블에 저장합니다.안녕,
여기서 도움이 필요해요. jsl을 쓰려고 했지만 막혔고 누군가 여기서 안내해 주었으면 좋겠어요.
10000개 이상의 압축 폴더가 들어 있는 디렉토리가 있습니다. 각 압축 폴더에는 100개 이상의 파일이 있습니다.
압축된 폴더를 압축 해제하지 않고 아래 작업을 수행하고 싶습니다.
1) 각 압축 폴더의 이름을 가져옵니다.
2) 개별 압축 폴더에 넣습니다.
3) 압축 폴더에서 파일을 받으세요.
4) 표에서 1열에는 압축된 폴더 이름을, 2열에는 해당 파일 이름을 추가합니다.
5) 다음 압축 폴더에 대해서도 1)~4) 단계를 반복합니다.
미리 감사드립니다
콘텐츠 구성품질 및 공정 엔지니어링Re: 각 zip 폴더를 통해 파일 이름 목록을 가져오고 단일 테이블에 저장합니다.안녕하세요, 파일 이름 목록을 얻을 수 있습니다. 각 압축 폴더의 특정 문자열을 포함하는 단계 열기 파일을 추가하고 나중에 모두 하나의 테이블로 연결하고 싶습니다. 아래와 같이 스크립트를 수정했지만 해당 파일을 열지 않는 것 같습니다(총 6000개 이상 있음). 파일 이름에 "rag"가 포함된 6000개 이상의 파일은 ".log" 유형 파일입니다.
6000개 이상의 파일을 모두 연 다음 연결만 하지 않고 파일을 동일한 테이블에 계속 추가할 수 있는 방법이 있습니까?
경로 ="C:\사용자\데스크탑\테스트\";
폴더 = 디렉토리에 있는 파일( 경로 );
테이블={};
For( i = 1, i <= N 항목( 폴더 ), i++,
If( Word( -1, 폴더[i], "." ) == "zip",
theFolder = Open( 경로 || 폴더[i], zip );
dirList = theFolder << dir;
For( k = 1, k <= N 항목( dirList ), k++,
If (contains(dirlist[i], "rag"),
rag_file = theFolder << read(dirList[i], format(blob));
열기(경로 || 폴더[i] ||"\" || rag_file);
Insert Into(테이블, 데이터 테이블(경로 || 폴더[i]));
);
);
);
);
dt = 새 테이블("all_rag_files");
dt << concatenate(tables, 첫 번째 테이블에 추가( 1 ), 소스 열 생성);
Re: 각 zip 폴더를 통해 파일 이름 목록을 가져오고 단일 테이블에 저장합니다.이 코드를 사용하면 시작할 수 있습니다.
NamesDefaultToHere(1);
myFolder = PickDirectory("Pick Folder", "$DESKTOP");
zipList = FilesInDirectory(myFolder);
col1Vals = {};
col2Vals = {};
for(z=1, z<=NItems(zipList), z++,
filePath = myFolder||"/"||zipList[z];
thisZIP = Open(filePath, zip);
filesInThisZIP = thisZIP << dir;
for(f=2, f<=NItems(filesInThisZIP), f++,
if(NItems(Words(filesInThisZIP[f], "/")) == 2,
InsertInto(col1Vals, zipList[z]);
InsertInto(col2vals, filesInThisZIP[f]);
);
);
Close(thisZIP, noSave);
);
NewTable("Folder of ZIP Files",
NewColumn("Folder Name", Character, Values(col1Vals)),
NewColumn("File Name", Character, Values(col2Vals))
);Re: 각 zip 폴더를 통해 파일 이름 목록을 가져오고 단일 테이블에 저장합니다.다음은 zip 파일을 다루는 이전 커뮤니티 항목을 사용하여 함께 던진 간단한 스크립트입니다.그것이 당신에게 효과가 있는지 확인하십시오.
Names Default To Here( 1 );
directory = Pick Directory( "Select Directory that contains the Zip files" );
folders = Files In Directory( directory );
dt = New Table( "Zip Files",
New Column( "Folder Name", character ),
New Column( "File Name", character )
);
For( i = 1, i <= N Items( folders ), i++,
If( Word( -1, folders[i], "." ) == "zip",
theFolder = Open( directory || folders[i], zip );
dirList = theFolder << dir;
For( k = 1, k <= N Items( dirList ), k++,
dt << add rows( 1 );
numRows = N Rows( dt );
dt:Folder Name[numRows] = folders[i];
dt:File Name[numRows] = dirList[k];
);
)
);
Re: 각 zip 폴더를 통해 파일 이름 목록을 가져오고 단일 테이블에 저장합니다.상당히 새로운 Uncharted 블로그 게시물을 확인하십시오. ZIP에서 선택한 CSV의 MFI . 이것에 접근하는 방법에 대한 꽤 좋은 아이디어를 줄 수 있습니다.
Scripting Index에는 ZipArchive에 대한 문서도 있는 것 같습니다.
