2010-12-13 3 views
1

Apple Automator를 사용하여 선택한 파일 세트를 반복하고 각 파일을 처리하고 출력을 새 파일로 저장할 수 있습니까?Apple Automator가 csv 파일을 처리하고 새 파일을 만듭니다.

나는 .XLS 파일의 컬렉션을 가지고, 나는

- Ask for Finder Items 
- Open Finder Items 
- Convert Format of Excel Files #save each .xls file to a .csv 

내가 인수로 파일 이름을 허용하는 파이썬 스크립트를 작성했습니다에 자동화를 오긴했는데, 그것을 처리하고 p_filename로 저장 스크립트가 실행되는 디렉토리에서. 나는에 붙여 넣은 /usr/bin/python 쉘 내 파이썬 스크립트 Run Shell Script를 사용하는 것을 시도하고있다.

을 어떤 일들이 너무 잘 번역하지 않습니다,하지만 나는 그것이 파이썬의 open('filename','w') 명령을 다루는 방법을 잘 모르겠어요 특히 때문이다. 아마도 새 파일을 만들 권한이 없거나 명령을 잘못 입력하고 있습니다. 대신 처리 된 파일을 텍스트로 출력하고 Automator로 캡처 한 다음 새 파일에 저장하는 아이디어가있었습니다.

이렇게하려면 New Text File을 사용해 보았지만 처음에 선택한 각 파일에 대해 새 텍스트 파일을 만들 수는 없습니다. 선택한 모든 Finder 항목을 반복 할 수 있습니까?

답변

1

왜이 작업을 스크립트의 폴더에서 수행 하시겠습니까? 또는 파인더 항목에서 가져 오는 파일의 폴더를 의미합니까? 이 경우 Python으로 전달되는 각 파일의 경로를 가져옵니다.

open ('filename', 'w')을 실행하면 전체 경로 이름을 전달해야합니다. 아마 당신이 생각하는 곳이 아닌 루트 디렉토리에 실제로 글을 쓰고 있습니다. 인수가 다음이있을 수 있습니다으로

가정이 자동화에서 쉘 명령에 파일을 전달하는 다음

import sys, os 

args = sys.argv[1:] 
for a in args: 
    p = os.path.dirname(a) 
    mypath = p + "/" + name 
    f = open(mypath, "w") 
+0

그것이 os.path.join 사용하여 경로를 구성하는 것이 더하지 않을까요? – nekomatic

관련 문제