私はaを持っていますscript.sh このファイルのファイルとタイプはshellscriptファイルです。 このファイルをapplication/x-executableファイルとして作成したいと思います。 どうすれば作れますか?
ファイルを実行可能ファイルとしてマークできます:
chmod +x filename.sh
次に、次のように実行できます:
./filename.sh
別のコマンドを使用して起動する場合は、エイリアスを追加できます:
gedit ~/.bashrc
これをファイルの最後に追加します:
alias <new name>='/home/<full path to script>/filename.sh'
新しい端末セッションを開くか、次のように入力します source ~/.bashrc
お使いの端末で適用します。次に、新しい名前を使用してスクリプトを開始します。
ファイルを実行可能にするには、次の2つの方法があります:
GUIメソッド:
ファイルを右クリックし、[プロパティ]を選択します。アクセス許可タブに移動し、ボックスにチェックを入れます Execute: [ ] Allow executing file as program
またはノーチラスで Program: [ ] Allow this file to run as a program
トゥナールで
端末/コマンド方法:
次のいずれかを使用できます:
cd /to/my/required/directory
次に実行します
chmod +x filename.extension
または単に実行します:
chmod +x /path/to/your/filename.extension
chmod
また、いくつかのより高度なオプションを持ってい:
スペースは、それが分割されていることを示すことです: - rwx --- ---
の最初のセット ---
ユーザーです。 第二はグループであり、最後は他の(他の誰か)です
rはRead、WはWrite、xはeXecuteを表します。
したがって、誰もがそれを読むことができますが、実行するのはグループだけで、ユーザーはそれを読み書きすることができます(何らかの理由で実行され:
-rw- rx- r--
しかし、これは次のようにコマンドに追加されます:
chmod +rw-rx-r-- /path/to/file.extension
chmod
また、数字でこれを行うことができます。 それはバイナリに基づいています(私はそれが1,2と4であると思います)
だから、これらの数字があります:
ユーザーによる実行は 100
.グループによる実行は 010
.他のisによって実行されます 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
他の権限(実行権限など)に影響を与えずに、ユーザーの読み取りと書き込みを追加する。
このウェブサイト あなたが望むオプションをチェックすることができ、それはあなたにコマンドを与えることにより、非常に便利:
しかし、すべての可能な組み合わせが使用するのが賢明ではありません。:
755 - Owner
すべてを持っており、 Group
と Other
読み取りと実行が可能
700 - Owner
すべてを持っています
644 - Owner
読み書きができ、 Group
と Other
読むことができます
600 - Owner
読み書きができます
また、自明でないユーザーグループを使用している場合:
775 - Owner
読み書きができ、 Group
と Other
読むことができます
770 - Owner
と Group
すべてを持っている、と Other
読み取りと実行が可能
750 - Owner
すべてを持っており、 Group
読み取りと実行が可能
664 - Owner
と Group
読み書きができ、 Other
ただ読むことができます
660 - Owner
と Group
読み書きができます
640 - Owner
読み書きができ、 Group
読むことができます
777と666は、/tmpを除いてほとんど使用されません。
走れ。:
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
すべてのユーザーにスクリプトを実行させる
前述のように、ファイルの実行ビットを設定して実行可能にすることができます chmod +x
. しかし、あなたはまた、使用することができます chmod a+x
:
$ ll file_command.txt-rw-rw-r-- 1 rick rick 17 Sep 19 08:55 file_command.txt$ chmod a+x file_command.txt$ ll file_command.txt-rwxrwxr-x 1 rick rick 17 Sep 19 08:55 file_command.txt*
注意事項:
- スクリプトは次のように終わる必要はありません
.sh
それはで終わることができます.txt
ここに示すように、または一切の拡張子を持っていません。 - ただの代わりに
+x
(あなただけがスクリプトを実行することができます)、使用しますa+x
そのため、すべてのユーザーがスクリプトを実行できます。 - ファイル名には
*
それが実行可能であることを示すためにそれに追加されます。 また、ほとんどのシステムでは、ファイル名の色が緑色に変わります。
実行可能にせずにスクリプトを実行する
実行可能にせずにbashスクリプトを実行することはできます。 例えば:
$ echo "echo Hello World" > file_command.txt$ cat file_command.txtecho Hello World$ bash file_command.txtHello World
注意事項:
- まず、以下を含むスクリプトを作成します
echo Hello World
. - その後、私たちはと呼ばれるスクリプトを確認します
file_command.txt
正しいです。 - 最後に、以下を呼び出してスクリプトを実行します
bash
そしてそれにスクリプト名を渡します。 そのbash
コマンドは実際には次のように格納されます/bin/bash
そして、それはすべてのUbuntuシステム上の実行可能ファイルです。 - コマンドのファイルを作成すると、コマンドの追加が省かれます。 シェバン
#!/bin/bash
スクリプトの最初の行として。 - コマンドのファイルを作成すると、次のように実行可能にすることができます
chmod +x
またはchmod a+x
.
私はそれをapplication/x-executableにすることについて具体的に尋ねたので、それは重複していません。 他の質問は、端末でshファイルを開くように要求するだけです。