3

構成ファイルからファイルパスを読み取ってから、そのディレクトリから読み取ろうとしています。ただし、何らかの理由で change-dir が絶対ファイルパスに移動しないため、それを機能させる方法が見つかりません。これは、CLI で動作させようとしている私のトランスクリプトです。

>> test: pick read/lines %test.ini 1
== "test: C/Users/thompson/Downloads/"
>> test: find test " "
== " C/Users/thompson/Downloads/"
>> test: next test
== "C/Users/thompson/Downloads/"
>> test: to file! test
== %C/Users/thompson/Downloads/
>> change-dir test
** Access Error: Cannot open /C/rscratch/C/Users/thompson/Downloads/
** Near: change-dir test
4

4 に答える 4

2

レボルが見えないので失敗です

%C/Users/thompson/Downloads/

絶対パスとして - 先頭の魔法のスラッシュがないため、相対パスと見なされます。絶対パスは次のとおりです。

%/C/Users/thompson/Downloads/

先頭のスラッシュがないことが確実な場合は、簡単に修正できます。

>> test: pick read/lines %test.ini 1
== "test: C/Users/thompson/Downloads/"
>> test: find test " "
== " C/Users/thompson/Downloads/"
>> test: next test
== "C/Users/thompson/Downloads/"
>> test: to file! join "/" test
于 2016-10-25T03:54:58.307 に答える
2

Rebol ファイルの絶対パスを取得する方法はたくさんありますが、

レボルのやり方

 test: "test: %/C/Users/thompson/Downloads/"
 select load test [test:]

Linux のやり方

test: "test: /C/Users/thompson/Downloads/"
to-file trim find/tail test "test:"

Windows のやり方

test: "test: C:/Users/thompson/Downloads/"
to-rebol-file trim find/tail test "test:"

あなたはいつも得るでしょう%/C/Users/thompson/Downloads/

于 2016-10-25T05:54:17.420 に答える