ファイル(例:.shスクリプト)を実行可能にして、ターミナルから実行できるようにする方法
script.shというファイルがありますが、このファイルのタイプはshellscriptファイルです。このファイルをapplication/x-executableファイルにしたいのですが。どのようにすればよいのでしょうか?
252
3
script.shというファイルがありますが、このファイルのタイプはshellscriptファイルです。このファイルをapplication/x-executableファイルにしたいのですが。どのようにすればよいのでしょうか?
ファイルを実行可能な状態にすることができます。
そして、次のように実行できます。
別のコマンドを使って起動したい場合は、エイリアスを追加することができます。
これをファイルの最後に追加します。
新しいターミナルセッションを開くか、ターミナルで
source ~/.bashrc
と入力して適用します。 その後、新しい名前を使ってスクリプトを開始するだけです。ファイルを実行可能な状態にするには、2つの方法があります。
GUI方式:。
パーミッション」タブを開き、「実行」にチェックを入れます。[ ] ファイルをプログラムとして実行することを許可する。
にチェックを入れます。
**ターミナル/コマンド方式:***。
のいずれかを使用します。
cd /to/my/required/directory`。
次に
chmod +x ファイル名.拡張子`。
あるいは、ただ実行するだけ。
chmod +x /path/to/your/filename.extension
を実行します。chmod
にはさらに高度なオプションもあります。スペースは分割されていることを示しています。
- rwx --- ---
最初の
---
はユーザーです。2番目はGroup、最後はOther(他の誰か)です。rはRead(読む)、wはWrite(書く)、xはeXecute(実行)を意味します。
つまり、誰でも読めるが、グループだけが実行でき、ユーザーだけが読み書きできる(ただし、何らかの理由で実行できない)ようにするには、次のようになります。
rw- rx- r--` しかし、これはコマンドに次のように追加されます。
chmod +rw-rx-r-- /path/to/file.extension
となります。chmod
は数字でもこれを行うことができます。これはバイナリに基づいています(1,2,4なので、私はそう思います)。ですから、このような数字があります。
ユーザーによる実行は
100
です。 グループでの実行は010
です。 他のユーザーによる実行は001ユーザーによる書き込みは
200
です。 グループでの実行は020
です。 他のユーザーによる書き込みは002
です。ユーザーによる読み取りは
400
です。 グループによる読み取りは040
です。 他の人が読むのは004
です。これらを足して目的の組み合わせにします。
つまり、誰でも読めるが、グループだけが実行でき、ユーザーだけが書ける(ただし、何らかの理由で実行できない)ようにするには、次のようにします。
400 + 040 + 004
と
010と
200` です。600 + 050 + 004 = 654 ということになります。
そして、コマンドを実行することができます。
chmod +654 /path/to/file.extension
で設定できます。また、すべてのパーミッションを設定するには、次のように入力します。
chmod +rwxrwxrwx /path/to/file.extension
と入力します。または(これは書くのが少し簡単ですが、それぞれを覚えるのが大変です)。
chmod +777 /path/to/file.extension
です。最後に、次のようにします。
chmod -777 /path/to/file.extension
を実行します。すべてのパーミッションを全員から奪うために。
そして
chmod +300 /path/to/file.extension
です。他のパーミッション(例:実行パーミッション)に影響を与えることなく、ユーザーの読み取りと書き込みを追加します。
このウェブサイトには、非常に便利な小さな格子状のチェックボックスがあり、必要なオプションにチェックを入れると、コマンドが表示されます。
![enter image description here][3].
しかし、すべての可能な組み合わせが賢明に使えるわけではなく、主に次のようなものが使われています。
755 - 「Owner」がすべての権限を持ち、「Group」と「Other」は読み取りと実行が可能。
700 - 「所有者」がすべてを持つ
644 -
Owner
は読み書き可能で、Group
とOther
は読み書き可能です。600 -
オーナー
が読み書き可能また、自明でないユーザーグループを使っている場合は
775 -
Owner
が読み書きでき、Group
とOther
が読み書きできます。770 -
Owner
とGroup
はすべての権限を持ち、Other
は読み取りと実行が可能です。750 -
オーナー
がすべてを持っていて、グループ
が読み取りと実行ができる664 -
オーナー
とグループ
は読み取りと書き込みができ、その他
は読み取りのみが可能です。660 -
オーナー
とグループ
は読み取りと書き込みができます。640 -
オーナー
が読み書きでき、グループ
が読み書きできる777と666は、/tmp以外ではほとんど使われません。
一般的に使用されているものを指摘してくれたIlmari Karonenさんに感謝します!
私の代名詞はHe / Him
[3]: http://i.stack.imgur.com/2Vgwt.png
走る。
実行できないようにするには、次のように実行します。
例えば、私は
.sh
ファイルを作成しました。vi エディタでコードを書いた後、vi エディタを終了します。