ファイル(例:.shスクリプト)を実行可能にして、ターミナルから実行できるようにする方法

script.shというファイルがありますが、このファイルのタイプはshellscriptファイルです。このファイルをapplication/x-executableファイルにしたいのですが。どのようにすればよいのでしょうか?

ソリューション

ファイルを実行可能な状態にすることができます。

chmod +x filename.sh

そして、次のように実行できます。

./filename.sh

別のコマンドを使って起動したい場合は、エイリアスを追加することができます。

gedit ~/.bashrc

これをファイルの最後に追加します。

alias ='/home//filename.sh'

新しいターミナルセッションを開くか、ターミナルで source ~/.bashrc と入力して適用します。 その後、新しい名前を使ってスクリプトを開始するだけです。

解説 (5)

ファイルを実行可能な状態にするには、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 + 004010200` です。

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 は読み書き可能で、GroupOther は読み書き可能です。

600 - オーナー が読み書き可能

また、自明でないユーザーグループを使っている場合は

775 - Owner が読み書きでき、GroupOther が読み書きできます。

770 - OwnerGroup はすべての権限を持ち、Other は読み取りと実行が可能です。

750 - オーナー がすべてを持っていて、グループ が読み取りと実行ができる

664 - オーナーグループは読み取りと書き込みができ、その他は読み取りのみが可能です。

660 - オーナーグループ は読み取りと書き込みができます。

640 - オーナー が読み書きでき、グループ が読み書きできる

777と666は、/tmp以外ではほとんど使われません。

一般的に使用されているものを指摘してくれたIlmari Karonenさんに感謝します!

私の代名詞はHe / Him

[3]: http://i.stack.imgur.com/2Vgwt.png

解説 (2)

走る。

chmod +x /path/to/file.sh

実行できないようにするには、次のように実行します。

chmod -x /path/to/file.sh

例えば、私は .sh ファイルを作成しました。

vi tester12.sh

vi エディタでコードを書いた後、vi エディタを終了します。

:wq!
chmod +x tester12.sh
./tester12.sh
解説 (0)