リモートサーバーでRスクリプトを実行します。私はスクリプトを実行し、サーバー上で実行されます...しかし、安全機能として私はファイル操作を無効にしたい(file.create()、file.remove()などを考えて)Rのファイル操作を無効にしますか?
これはですか?可能?スクリプトの一番上に置くことができる行がありますか、コマンドライン呼び出しに追加できる行があります。ファイルがローカルのcsvファイルから読み込めるようになりますが、書き込み/変更はできません/削除しますか?
リモートサーバーでRスクリプトを実行します。私はスクリプトを実行し、サーバー上で実行されます...しかし、安全機能として私はファイル操作を無効にしたい(file.create()、file.remove()などを考えて)Rのファイル操作を無効にしますか?
これはですか?可能?スクリプトの一番上に置くことができる行がありますか、コマンドライン呼び出しに追加できる行があります。ファイルがローカルのcsvファイルから読み込めるようになりますが、書き込み/変更はできません/削除しますか?
スクリプトレベルの指示ではなく、読み取り専用アクセスのためにサーバーフォルダをロックすることを検討してください。
を:また、Windowsには、これはあなたも指名アクセス権限が異なるユーザーグループによって(許可/拒否)することができ、フォルダのプロパティ(右クリックメニュー)の下でセキュリティタブで行うことができます
012:ユーザーのために拒否されただけ 書き込みでは、任意の file manipulation methodは エラー 警告または FALSE値を上げませんがfile.create("C:\\Path\\To\\Read-Only\\Folder\\NewFile.txt")
# [1] FALSE
# Warning message:
# In file.create("C:\\Path\\To\\Read-Only\\Folder\\NewFile.txt") :
# cannot create file 'C:\\Path\\To\\Read-Only\\Folder\\NewFile.txt', reason 'Permission denied'
file.rename("C:\\Path\\To\\Read-Only\\Folder\\CurrentFile.txt",
"C:\\Path\\To\\Read-Only\\Folder\\CurrentFile.txt")
# [1] FALSE
file.copy("C:\\Path\\To\\Read-Only\\Folder\\CurrentFile.txt",
"C:\\Path\\To\\Read-Only\\Folder\\NewFile.txt")
# [1] FALSE
# Warning message:
# In file.create("C:\\Path\\To\\Read-Only\\Folder\\NewFile.txt") :
# cannot create file 'C:\\Path\\To\\Read-Only\\Folder\\NewFile.txt', reason 'Permission denied'
そして、ユーザーがエラーなしのファイルを読むことができます:
con <- file(description="C:\\Path\\To\\Read-Only\\Folder\\CurrentFile.txt", open="r")
close(con)
df <- read.table("C:\\Path\\To\\Read-Only\\Folder\\CurrentFile.txt")
ありがとうございました。これは役に立ちます。問題は、私は自動化専用のサーバーを使用しています。 Rスクリプト呼び出し中にこのようなことをコマンドラインで呼び出す方法はありますか?ファイルはまだ他の仕事のために書くことができる必要があります、私はちょうどこのアクションが呼ばれるたびにそれを制限したかったです。 – user3739091
これは、RのためにOS側で一度行うことができるものですか? – user3739091
コード内に 'if'ロジックを条件にしてアクションをラップすることを検討してください。ユーザー実行スクリプトには、読み取り/書き込み権限を制限する管理者権限がない場合があります。また、ファイルシステムへのアクセスとセキュリティを処理するアプリケーションを残したいというわけでもありません。 – Parfait
は、通常はOS側の権限でこれを処理すると思います。そのような制限をRに実装する実現可能な方法はないと思います。 – Roland