2017-02-22 11 views
0

Macアプリケーションの開発に新しい。 (しかし、私は多くの仕事をしています)mac os x applicationのシェルコマンドを使ってファイルにアクセスする方法は?

私はボタンがあるウィンドウを持っています。ユーザがボタンをクリックすると、ユーザが&をドラッグしたフォルダ内でいくつかのシェルコマンドを実行するアクションがトリガされるはずです。

たとえば ユーザーは自分のアプリケーション内のいくつかのフォルダをドラッグアンドドロップすると、このフォルダ内にgemfileが作成されます。ここで

は、私がシェルと最初のコマンドを実行して、私の現在のバージョンであるcd <pathToFolder>ですが、出力はここ/usr/bin/cd: line 4: cd: file:///Users/klemen/Downloads/ABCAcura/: No such file or directory

であることは私のコードです:

@IBAction func handleCreateGemfileButton(_ sender: NSButton) { 

    let pipe = Pipe() 
    let process = Process() 
    process.launchPath = "/bin/bash" 
    process.arguments = ["cd", projectURL.absoluteString] 
    process.standardOutput = pipe 
    let file = pipe.fileHandleForReading 
    process.launch() 

    if let result = NSString(data: file.readDataToEndOfFile(), encoding: String.Encoding.utf8.rawValue) { 
    print(result as String) 
    } 
    else { 
    print("error") 
    } 
} 

は、いくつかの制限があります。私のアプリが彼のファイルのいくつかにアクセスすることをユーザからどのように要求することが可能ですか?

+0

''〜/ Downloads/ABCAcura/'はそれが引数ですか? – paper1111

+0

file:/// Users/klemen/Downloads/ABCAcura/OK、これはおそらくプレフィックスが間違っている問題です。 –

答えて

1

file:///...の代わりに~/Downloads/ABCAcuraを使用してください。file:///は、ファイルへのパスではなくプロトコル(URL)です。

関連する問題