Unix / Linuxでカスタムコマンドを作成する方法 [閉まっている]


55

Unix / Linuxでカスタムコマンドを作成するために誰でも私を導くことができます。


2
将来の参考のために、あなたは事実ページをチェックアウトする必要があります。質問に入れるべきことを説明しています。(調査したものや試したものを投稿するなど)。だから誰かがこの質問に反対票を投じたのでしょう。
スパーダー

回答:


68

/ usr / binフォルダーにbashスクリプトを作成します。次のようになります。

#!/bin/bash
Whatever combination of commands you want to run when you type this thing.

本当に簡単です。

ターミナルに入力する名前をbashスクリプトに指定してchmod +x filename、実行可能にします。これで準備完了です。


1
これを、必要なすべてのステップを含むステップバイステップガイドに変更できますか?独自のカスタムコマンドを作成する方法はまだわかりません。
依田

5
@AndersMB、読む必要があります。多くの優れたものがあり、無料でも入手できます。「Linuxコマンドライン」から始めます。
ワイルドカード

うーん、彼は冗談を言っていた。彼冗談を言っていましたよね?!
サムナスシンハ

1
実行./filename
-Squirrl

46
  1. ホームディレクトリの下に「bin」というディレクトリを作成します。
  2. パス変数を更新して、このbinディレクトリを含めます。これをファイル.profileまたは.bash_profleファイルに入れて永続的にします。

    export PATH=$PATH":$HOME/bin"

  3. 「hello」というスクリプトを作成し、binディレクトリに保存します。でhelloスクリプトに実行許可を与え$ chmod +x helloます。

    #!/bin/bash    
    echo My first program
  4. リロード.profileまたは.bash_profle

    $ . ~/.bash_profile

  5. 任意のディレクトリから、次のように入力するだけです:

    $ hello
    My first program

私はこれが非常に古いことを知っていbinますが、ここで多くの答えでフォルダを作成するというあなたの提案を見てきました。の.bin代わりに問題がある場合はbin?私は自分のhome見た目について本当にうるさいので、余分なフォルダーが欲しくありません。
MO

私がいたと間違って何かを失敗し、これを使用してみましたし、そこを考えてしばらくの間、非常にイライラしてきた私のzshインストールまたは$PATHそれがあることになってしまっchmod -x hello作業していない、どちらも資本をしていませんでした-X。代わりに試しましたがchmod 755 hello、このコマンドに関するセキュリティリスクはわかりませんが、実際に実行できましたhello。これについての説明はありますか?私はそれが年齢に関して問題であると仮定していますか?
ConstantFun

1
@ConstantFun chmod +x helloスクリプトに「実行」特権を追加するために使用します。chmod -x helloまったく逆のこと-「実行」権限を削除します。(回答とコメントのプラス/マイナス記号の違いに注意してください。)
Filip Happy

25

簡単、エイリアスを作成します。

ダウンロードディレクトリにcdするコマンドを作成するとします。そして、あなたはそれをcddと呼びたいです。

alias cdd='cd ~/Downloads' 

必要なコマンドを作成できます。

詳細は次のとおりです。http
//www.mediacollege.com/linux/command/alias.html


6
ただし、これはセッション間で持続しません。このコマンドは機能しますが、永続的ではありません。より永続的な方法は、〜/ .bash_aliasesファイルを変更し、そこに提案した行を追加することです。
ジェフグライムズ14年

2
また、あなたの〜/ .bashrcファイルに追加することによって動作します
DELICIA Brummitt

11

今ではすべてではないにしても、ほとんどのLinuxディストリビューションには〜/ .bashrcにこれとほとんど同じように見える小さなスクリプトがあります

if [ -e ~/.bash_aliases ]
then
. ~/.bash_aliases
fi

これは単に、独自のコマンドを作成できることを意味します(aliases通常、「」は、常に使用する必要のある引数を持つ既存のコマンド、または順番に実行する必要のあるコマンドのリストを指します)。

Linuxディストリビューションでは、手動で行っていない限り、ほとんどの場合、自宅で.bash_aliasesファイルが作成されません。そのため、ファイルを作成するには、次のコマンドを入力します。
touch ~/.bash_aliases

これで、新しいターミナルを起動するたびにそのファイルが自動的に実行されます。

ここでできることは、エイリアスのリストを作成し、後で使用するためにそのファイルにエイリアスを追加することです。たとえば、rmデフォルトで(remove)コマンドは、ファイル/ディレクトリを削除するように要求するときに、要求の確認を求めません。ただし、rmリクエストの確認を求めるように指示する引数があります-i。したがって、rm -i filePath指定したファイルを削除するかどうかを確認するメッセージが表示されます。これで、誤ってファイルを削除した-i場合、オプションを含めるのを忘れてしまう可能性が非常に高くなります。その場合、a aliasが非常に有益になります。次のコマンドを入力します

echo "alias rm='\rm -i'" >> ~/.bash_aliases

教えてくれますBashあなたは、ファイルを削除するよう要求するたびに、確認のメッセージがあなたに表示されること。もちろん、できることはもっとたくさんあります。これが基本です。

あなたは(すなわち、いくつかの基本的なコマンドを使用する方法を学習したい場合はcdtouchrmmkdirpushdpopd、など)および/またはより洗練されたものは、私が呼ば参考としてご本棚にあなたが持つことができる非常に良い本をお勧めします

Linuxコマンドエディターとシェルプログラミングの実用的なガイドMark G. Sobell著。ISBN:978-0133085044


1
なぜバックスラッシュ?
phil294
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.