chmod 777 script.plは、端末でスクリプトを実行するときに使用されます。 しかし、私たちがcプログラムを実行するときにchmod pg.cを使用しない理由なぜPerlスクリプトの実行中にchmodを使って実行権限を与える必要がありますが、cプログラムの実行中にそのようなことは行われませんか?
0
A
答えて
3
通常、Cプログラムは直接実行されず実行ファイルにコンパイルされます。コンパイラは、そのファイルを直接実行できるようにそのファイルに対するアクセス権を設定します。
明示的にインタープリタを呼び出すときにスクリプトを実行するために、実行可能フラグは不要であることに注意してください。 perl script.pl
を実行すると、常に動作します。gcc pg.c
は常に動作します。実行可能フラグは、スクリプトが明示的なインタプリタなしで実行される場合にのみ必要です。つまり、./script.pl
です。オペレーティングシステムは、ファイル自体から正しいインタープリターを決定します(例えば、#!/usr/bin/perl
行から)。
0
cプログラムをコンパイルすると、すでに実行可能なバイナリが使用できます。しかし、Perlがインタプリタ言語である場合、最初にコンパイルする必要はなく、直接実行することができます。 + xの許可が必要なためです。
関連する問題
- 1. 「bashスクリプトファイル」を使用せずに任意のスクリプトを実行できますが、なぜ実行権限が必要なのですか?
- 2. スクリプトの実行時にのみ実行されるRubyコードを書くことはできますが、必要なときには実行できません。
- 3. インストール中にSQLスクリプトを実行する必要がありますか?
- 4. スクリプト実行エラー:そのようなファイルまたはディレクトリがありません
- 5. 実行中にCプログラムがクラッシュする
- 6. なぜpythonファイルを実行するには実行権限が必要ですか?
- 7. AccessDeniedException:ユーザーが実行する権限がありません。lambda:InvokeFunction
- 8. sp_send_dbmailを実行する権限がありません
- 9. なぜ、このプログラムは、それが実行時にクラッシュする
- 10. ファブリックSUDOの実行中に実行可能な機能があります
- 11. なぜこの行は実行されていませんか?
- 12. システムコマンドによって実行されたスクリプトは、実行中のスクリプトのSESSIONデータにアクセスできますか?
- 13. GCが実行されず(実行する必要があります)、プログラムの実行が終了したらどうなりますか?
- 14. "インポート:コマンドが見つかりません" Pythonスクリプトを実行中
- 15. 実行中の秘密のCプログラムの動作 - コードが連続して実行されていません
- 16. このJOGLプログラムはなぜ実行されませんか?
- 17. ランタイム中に実行中にメインプログラムに含まれないコードを実行する
- 18. jQuery addClass/removeClassはデバッグ中に実行されますが、通常の実行ではありません
- 19. 摩耗のデフォルトデバイスを実行中のエラーがありません
- 20. Dockerfileでインストールを実行する前に、なぜアップデートを実行する必要がありますか?
- 21. testngの実行中にプログラムによるプロファイリングを行う方法
- 22. Windowsサービスは実行中ですがコードは実行されていません
- 23. 実行中./gradlew buildNativeは成功しますが、グラデルビルドは行われません
- 24. プログラムの実行中に実行されるコード行は何回ですか?
- 25. プログラムの実行中にsigsegv
- 26. 権限がありません(#401) "あなたはこの操作を実行できません。" [Strapi]
- 27. ADBはrootとして実行中に権限が拒否されました
- 28. なぜnode.exeはcmd.exeが実行されるサンプルファイルを実行しませんか?
- 29. プログラムの実行中に連続して実行するテスト
- 30. サーバーがありませんクライアントを実行中のOnAccept通知
Cプログラムにはすでに実行権限がありますか? –
私たちは 'pg.c'プログラムを実行するのではなく、そのコンパイルされたバージョンを実行するので、 'a.out'。そして、 'a.out'(通常)_does_に' x'フラグがセットされています。 – PerlDuck
777を使用しないでください - コンピュータ上のすべてのユーザーアカウントにスクリプトへの書き込みアクセス権が与えられます。もっと慎重な選択が755になるでしょう。 –