[英]Linux/Ubuntu create executable command for sh file
我想為Ubuntu創建可執行命令。
我有/dir/bin/start.sh
我可以這樣執行
./dir/bin/start.sh
但是我想知道如何將其放入Ubuntu配置或其他東西,因此可以僅通過shell調用它
start
您可以通過以下任一方式執行此操作:
將命令目錄添加到$PATH
變量中,因此:
export PATH=$PATH:/dir/bin
要持久執行此操作,必須~/.profile
下行添加到~/.profile
文件中:
echo 'export PATH=$PATH:/dir/bin' >> ~/.profile
在添加到路徑的目錄中創建快捷方式(例如,使用ln -s '/dir/bin/start.sh' start
);
cd <pathdirectory> ln -s '/dir/bin/start.sh' start
創建一個別名,以便外殼程序簡單地替換命令:
echo 'alias start=./dir/bin/start.sh' >> ~/.profile
工作方式/原因
如果您在外殼程序中鍵入命令,它將首先查找別名,然后替換別名。 因此,如果您已經為start
定義了別名,它將被替換為./dir/bin/start.sh
; 就像你自己寫的一樣。
接下來,shell將嘗試查找命令的解釋。 如果命令是文件(例如,使用別名),則執行該文件。 否則,系統將退回到$PATH
。
$PATH
s是系統在其中搜索具有該名稱的文件的路徑序列。 它以該順序搜索路徑,並在所有文件中搜索名稱相同的文件。 如果存在該文件,它將運行該文件。
因此,您可以做一些事情:
ln
解決方案),在這種情況下,您只需在路徑文件夾中添加“代表”即可; PATH=$PATH:/dir/bin
擴展路徑數,以便它也可以搜索您的項目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.