linux下dirname的用法

2021-10-01 12:37:07 字數 826 閱讀 7565

用指令碼獲取指令碼所在的目錄路徑,兩種方法:

1.在命令列狀態下單純執行 $ cd `dirname $0` 是毫無意義的。因為他返回當前路徑的"."。

這個命令寫在指令碼檔案裡才有作用,他返回這個指令碼檔案放置的目錄,並可以根據這個目錄來定位所要執行程式的相對位置(絕對位置除外)。

新建test.sh,輸入:

#!/bin/bash

#獲得目錄

(cd `dirname $0`;pwd)

其中:

dirname $0,取得當前執行的指令碼檔案的父目錄

cd `dirname $0`,進入這個目錄(切換當前工作目錄)

pwd,顯示當前工作目錄(cd執行後的)

執行 sh test.sh,就可以獲得當前路徑。

2.分開執行

#!/bin/bash

cd $(dirname $0)

path=$(pwd)

echo "path:$"

一般情況下,$var$是沒有區別的,但是用$會比較精確的界定變數名稱的範圍。

$$ :shell本身的pid(processid)

$! :shell最後執行的後台process的pid

$? :最後執行的命令的結束**(返回值)

$0 :shell本身的檔名

1~n:新增到shell的各引數值。$1是第1引數、$2是第2引數…。

linux 下 dirname 0 的作用

今天在分析oracle自帶的指令碼sqldeveloper.sh的時候發現的 oracle linux 64 sqldeveloper cat sqldeveloper.sh bin bash cd dirname 0 sqldeveloper bin bash sqldeveloper dirna...

linux 中dirname的用法

dirname 命令讀取指定路徑名刪除最後乙個 斜槓 及其後面的字元,保留其他部分,並寫結果到標準輸出。如果最後乙個 後無 字元,dirname 命令使用倒數第二個 並忽略其後的所有字元。dirname 命令在建立路徑名的時候遵從以下規則 如果 path 引數為 雙 斜槓 或者引數 path 全部由...

Linux基礎 dirname命令總結

blog 個人本文只總結一些常用的用法,更詳細的說明見man dirname和direname help。目錄dirname命令用於獲取給定路徑的路徑部分。dirname option name.shell指令碼常用語返回指令碼檔案所在路徑。cd dirname 0 獲取網絡卡配置檔案所在路徑 ro...