最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux?Shell腳本如何獲取當(dāng)前路徑

 更新時(shí)間:2025年11月14日 09:14:47   作者:70年代的生猛海鮮  
本文介紹了在腳本中獲取當(dāng)前運(yùn)行目錄的方法,通過使用`dirname?$0`、`cd?$(dirname?$0)`和`pwd`命令,可以方便地獲取腳本的絕對(duì)路徑,文中還提供了一個(gè)測(cè)試示例,驗(yàn)證了該方法的有效性,此外,作者還提到直接使用`pwd`命令也是一種簡(jiǎn)單有效的獲取當(dāng)前目錄的方法

1、使用場(chǎng)景

我們的腳本經(jīng)常被放置到不同層次的目錄之中,有人喜歡放到/opt, 有人喜歡放到/home/myname,這是不可控的。

自動(dòng)化部署工作中,經(jīng)常要移動(dòng)、拷貝文件,而獲取當(dāng)前腳本運(yùn)行目錄,才能方便的操控相對(duì)路徑內(nèi)的文件。

本文就給出一種在腳本中獲知當(dāng)前程序運(yùn)行目錄的辦法。

2、原理

用到的函數(shù):

  • dirname $0:獲取當(dāng)前腳本所在的絕對(duì)目錄
  • cd $(dirname $0):進(jìn)入這個(gè)目錄
  • pwd:顯示切換后腳本所在工作目錄

結(jié)合起來,在腳本中使用下面的語句,就可以得到腳本的絕對(duì)路徑。

script_dir=$(cd $(dirname $0);pwd)

3、測(cè)試

3.1、測(cè)試原理

建立一個(gè)多重目錄,在里面新建腳本文件test_path.sh,腳本中使用上面的思路打印出路徑信息,期待運(yùn)行該腳本,能顯示出腳本所放置的絕對(duì)路徑。

[root@others ~]# mkdir -p /tmp/1//2/3/4/5
[root@others ~]# cd /tmp/1/2/3/4/5
[root@others 5]# pwd
/tmp/1/2/3/4/5

[root@others 5]# vim test_path.sh
#!/bin/bash
CUR_PATH=$(cd $(dirname $0) ; pwd)
echo ${CUR_PATH}

3.2、測(cè)試結(jié)果

test_path.sh運(yùn)行效果如下,正確打印出腳本所在的絕對(duì)路徑,達(dá)到預(yù)期。

[root@others 5]# sh test_path.sh 
/tmp/1/2/3/4/5

4、其它

以上方法和實(shí)現(xiàn)是我在網(wǎng)上找到的,其實(shí)我最直觀的感覺,直接在腳本中用pwd也行,簡(jiǎn)單測(cè)試下,也是沒有問題的。

如下:

腳本文件1.sh的內(nèi)容如下:

#!/bin/bash
CUR_PATH=$(pwd)
echo $CUR_PATH

測(cè)試結(jié)果達(dá)到預(yù)期,如下:

[root@others 5]# vim 1.sh
[root@others 5]# sh 1.sh
/tmp/1/2/3/4/5

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 在CentOS 6 中安裝WordPress(一) 安裝Apache,Mysql, PHP環(huán)境

    在CentOS 6 中安裝WordPress(一) 安裝Apache,Mysql, PHP環(huán)境

    最近做個(gè)項(xiàng)目,拿到一臺(tái)CentOS 6服務(wù)器,需要在上面配置php環(huán)境,并安裝WordPress,我們先來看看第一步,配置AMP(Apache,Mysql, PHP)環(huán)境
    2014-06-06
  • 修改sshd默認(rèn)端口的步驟

    修改sshd默認(rèn)端口的步驟

    ssh的的默認(rèn)端口是22,將它修改成別的值會(huì)更安全一些,修改步驟看下面介紹
    2014-01-01
  • Ubuntu安裝Matlab2020b詳細(xì)教程和資源

    Ubuntu安裝Matlab2020b詳細(xì)教程和資源

    大家好,本篇文章主要講的是Ubuntu安裝Matlab2020詳細(xì)教程和資源,感興趣的同學(xué)趕快來看一看吧,希望對(duì)你有幫助
    2021-11-11
  • Linux文件操作實(shí)戰(zhàn)之壓縮,遠(yuǎn)程傳輸和終端計(jì)算速成

    Linux文件操作實(shí)戰(zhàn)之壓縮,遠(yuǎn)程傳輸和終端計(jì)算速成

    Linux終端操作是運(yùn)維、開發(fā)必備基礎(chǔ),日常工作與面試均高頻涉及,本文以實(shí)操為核心,講解tar、scp、bc指令用法,補(bǔ)充面試題與熱鍵,結(jié)合故事拆解Shell與內(nèi)核交互邏輯,感興趣的小伙伴可以了解下
    2026-01-01
  • Linux(Centos7)下redis5集群搭建和使用說明詳解

    Linux(Centos7)下redis5集群搭建和使用說明詳解

    這篇文章主要介紹了Linux(Centos7)下redis5集群搭建和使用說明 ,本文通過實(shí)例文字代碼相結(jié)合的形式,給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-06-06
  • Linux下利用python實(shí)現(xiàn)語音識(shí)別詳細(xì)教程

    Linux下利用python實(shí)現(xiàn)語音識(shí)別詳細(xì)教程

    早期語音識(shí)別系統(tǒng)僅能識(shí)別單個(gè)講話者以及只有約十幾個(gè)單詞的詞匯量?,F(xiàn)代語音識(shí)別系統(tǒng)已經(jīng)取得了很大進(jìn)步,對(duì)于 Python 使用者而言,一些語音識(shí)別服務(wù)可通過 API 在線使用,且其中大部分也提供了 Python SDK,感興趣的小伙伴可以參考閱讀
    2023-03-03
  • Linux使用iptables實(shí)現(xiàn)IP訪問限制與解除限制的詳細(xì)教程

    Linux使用iptables實(shí)現(xiàn)IP訪問限制與解除限制的詳細(xì)教程

    在Linux服務(wù)器運(yùn)維中,iptables是一款強(qiáng)大的防火墻工具,常用于IP訪問控制、端口管理等場(chǎng)景,本文將聚焦IP訪問限制與限制解除兩大核心需求,結(jié)合實(shí)戰(zhàn)命令詳細(xì)拆解操作流程,需要的朋友可以參考下
    2026-03-03
  • Linux查找命令@which、find的使用方式

    Linux查找命令@which、find的使用方式

    這篇文章主要介紹了Linux查找命令@which、find的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • Linux使用nslookup和dig來查詢域名和ip信息

    Linux使用nslookup和dig來查詢域名和ip信息

    nslookup 和 dig命令一般用于查詢 DNS服務(wù)器,獲取域名、IP地址等DNS記錄信息,下面小編就來為大家介紹一下Linux如何使用nslookup和dig來查詢域名和ip信息吧
    2025-03-03
  • CentOS7中使用shell腳本安裝python3.8環(huán)境(推薦)

    CentOS7中使用shell腳本安裝python3.8環(huán)境(推薦)

    這篇文章主要介紹了CentOS7中使用shell腳本安裝python3.8環(huán)境,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03

最新評(píng)論

潜山县| 雅安市| 长治市| 屏东县| 宝丰县| 潼南县| 绵阳市| 朝阳区| 文山县| 庆元县| 三门县| 巧家县| 福州市| 会泽县| 肇州县| 商都县| 临武县| 屯昌县| 云龙县| 全州县| 城固县| 汨罗市| 洞口县| 牙克石市| 惠州市| 钟山县| 永新县| 安丘市| 九江县| 突泉县| 小金县| 胶州市| 土默特右旗| 苍山县| 海安县| 开鲁县| 江城| 定结县| 繁峙县| 将乐县| 伽师县|