[英]Running a shell script from any (non-specific) directory
因此,我已經在其他地方幾次發現了這個問題,但是我不太理解答案。
因此,我正在一個可容納多個人的巨型服務器上運行,因此目錄有些古怪,並且在確定我應該做什么時遇到了一些問題。
所以我想創建自己的腳本
做了以下
$ mkdir myscripts
$ cd myscripts
$ vim dirstatus.sh
在dirstatus.sh中,我只是編寫了一個簡單的腳本,我更感興趣的是使該腳本可從任何目錄執行。
所以
#!/usr/bin/env sh
# My own script - Experimenting with Shell
# Setting path export
export PATH=$PATH:~/bin/myscripts
printf "The current directory is $(pwd) \n
Path of this script is $(PATH)"
之后我做了
$ chmod +x dirstatus.sh
當我在myscripts目錄中執行./dirstatus.sh時,它可以工作
但是,當我在任何其他目錄甚至在myscripts目錄中執行$ dirstatus
時
我收到以下錯誤
~ksh: dirstat: command not found
有什么辦法嗎?
問題是包含dirstatus.sh文件的myscripts目錄不在終端會話的路徑中。 假設您在家中建立了myscripts目錄,則可以執行以下操作:
PATH=~/myscripts:$PATH
要使此更改適用於所有新的終端會話,可以將以上內容添加到登錄時加載的〜/ .profile或〜/ .bash_profile文件中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.