'Python 自作スクリプト名.py'に別名（alias）を設定すると、自作スクリプトファイルをUNIXコマンドのように実行できる

##以下のコマンドに、エイリアスで別名を与える！

自作したPythonスクリプトは、任意のディレクトリから、以下で実行できます。

```bash:任意のディレクトリ
python 自作ファイルの格納場所の絶対パス/.XXXXX.py
```

####上記のコマンドに、エイリアス（alias）で別名を与える。

自由に設定した__「別名」__が、自作スクリプトファイルを実行する際に呼び出す__コマンド名__になります。

```bash:Terminal
alias 好きなコマンド名='python 自作ファイルの格納場所の絶対パス/.XXXXX.py'
```

すると、__任意のディレクトリ__から、__「別名」と打つだけ__で、__自作したPythonスクリプトを実行__できる。

___

##（ 解説 ）

(1) pwdで、自作したPythonスクリプトファイルの絶対パスを確認
（例）

```bash:スクリプトファイルから見たカレントディレクトリのパスの例
/Users/ユーザ名/xxxxx/yyyyy/zzzzz/sample.py
```

(2) echo $HOMEで、ホームディレクトリの絶対パスを確認
（例）

```bash:HOMEディレクトリのパスの例
/Users/ユーザ名
```

(3) 1)で確認した絶対パスのうち、__*$HOME*__の絶対パスと一致する部分を__*$HOME*__に置き換える。
（例）

```bash:変更前
/Users/ユーザ名/xxxxx/yyyyy/zzzzz/sample.py
```
を、以下に変える。

```bash:変更後
$HOME/xxxxx/yyyyy/zzzzz/sample.py
```

(4) 任意のディレクトリから、 __*python $HOME/xxxxx/yyyyy/zzzzz/sample.py*__を実行することで、sample.pyを実行できる。

(5) (4)のコマンドに、打ちやすい短い別名をつける。

```bash:変更後
python $HOME/xxxxx/yyyyy/zzzzz/sample.py
```

別名は、エイリアス（alias）でつけることができる。

```bash:Terminal
alias 別名='python $HOME/xxxxx/yyyyy/zzzzz/sample.py'
```

(7). Macbookをログアウトして、再ログインした際に、上記のエイリアスが読み込まれるように、bash_profileに上記を書き込む。

```bash:Terminal
echo "alias 別名=\"python $HOME/xxxxx/yyyyy/zzzzz/sample.py\"" >> ~/.bashrc
source ~/.bashrc
```

(8). 任意のカレントディレクトリで、Terminal上で、「別名」を叩くと、自作スクリプトファイルが実行される。

```bash:任意のディレクトリで実行
別名
```

___

##（ 実例 ）

####[過去に作成した自作スクリプトファイル](https://qiita.com/Afo_guard_enthusiast/items/8b20f7d06cadcfe6b8e1)を例に、エイリアスを定義して、実行してみる。

__以下で実行できる。__

・ __カレント・ディレクトリ； *Users/ユーザ名*の直下__
・ __自作のPythonスクリプトファイルを、カレント・ディレクトリからの相対パスで実行（実行成功）__

```bash:Terminal
ocean@AfoguardMacBook-Pro ~ % pwd
/Users/ocean
ocean@AfoguardMacBook-Pro ~ % python ./Desktop/tkinter_test/tkinter_ner_svo_list_filter_by_target_word_and_case_file_dialog3.py

ocean@AfoguardMacBook-Pro ~ %
```
・ __カレント・ディレクトリ； *Users/ユーザ名*の直下__
・ __自作のPythonスクリプトファイルを、ルートからの絶対パスで実行（実行成功）__

```bash:Terminal   
ocean@AfoguardMacBook-Pro ~ % python3 /Users/ocean/Desktop/tkinter_test/tkinter_ner_svo_list_filter_by_target_word_and_case_file_dialog3.py

ocean@AfoguardMacBook-Pro ~ %
```

・ スクリプトファイルの__絶対パスのうち、*\$HOME*で置き換えられる部分を、*\$HOME*で置き換えて__実行（__実行成功__）

```bash:Terminal   
ocean@AfoguardMacBook-Pro ~ % echo $HOME
/Users/ocean
ocean@AfoguardMacBook-Pro ~ % python3 $HOME/Desktop/tkinter_test/tkinter_ner_svo_list_filter_by_target_word_and_case_file_dialog3.py

ocean@AfoguardMacBook-Pro ~ %
```

####上記の実行コマンド文字列に、エイリアスで別名を定義__

#####__'file_content'という別名__を定義する。

```bash:Terminal 
ocean@AfoguardMacBook-Pro ~ % alias file_content='python3 $HOME/Desktop/tkinter_test/tkinter_ner_svo_list_filter_by_target_word_and_case_file_dialog3.py'
ocean@AfoguardMacBook-Pro ~ %
```

#####Terminal上で、__'file_content'__と打ち込でエンターターキーを押すと、自作Pythonスクリプトファイルが実行できた。

```bash:Terminal 
ocean@AfoguardMacBook-Pro ~ % file_content

ocean@AfoguardMacBook-Pro ~ %
```

#####任意のディレクトリから、実行できる

・__1つ上の階層のディレクトリに移動後に、別名を実行（実行成功）__

```bash:Terminal 
ocean@AfoguardMacBook-Pro ~ % cd ..
ocean@AfoguardMacBook-Pro /Users % pwd
/Users
ocean@AfoguardMacBook-Pro /Users % file_content

ocean@AfoguardMacBook-Pro /Users %
```

・__2つ下の階層のディレクトリに移動後に、別名を実行（実行成功）__

```bash:Terminal 
ocean@AfoguardMacBook-Pro /Users % cd ocean/Desktop/files_test 
ocean@AfoguardMacBook-Pro files_test %     
ocean@AfoguardMacBook-Pro files_test % file_content               

ocean@AfoguardMacBook-Pro files_test %
```

・__同じ階層の別のディレクトリに移動後に、別名を実行（実行成功）__

```bash:Terminal 
ocean@AfoguardMacBook-Pro files_test % cd ../tkinter_test 
ocean@AfoguardMacBook-Pro tkinter_test % file_content      

ocean@AfoguardMacBook-Pro tkinter_test 
```

#####*which*コマンドで、エイリアスで設定した「別名コマンド」が呼び出す実行ファイルのパスを確認

 ```bash:Terminal 
ocean@AfoguardMacBook-Pro tkinter_test % which file_content                    
file_content: aliased to python3 $HOME/Desktop/tkinter_test/tkinter_ner_svo_list_filter_by_target_word_and_case_file_dialog3.py
ocean@AfoguardMacBook-Pro tkinter_test % 
```