簡體   English   中英

使用完整路徑運行bash腳本

[英]Run bash script using full path

有人可以解釋一下為什么我的腳本不能從創建該目錄的其他目錄中運行嗎? 我的腳本start.sh/ root / etlegacy /目錄中:

#!/bin/bash
/usr/bin/screen -d -m -S etserver /root/etlegacy/etlded

當我在/ root / etlegacy /中並通過以下命令運行腳本時,一切工作正常:

./start.sh

但是,即使我使用腳本的完整路徑,即在文件系統中的其他位置,它也不起作用

/root/etlegacy/start.sh

編寫腳本時沒有問題。 該問題很可能在/root/etlegacy/etlded ,可能需要運行到/root/etlegacy目錄中。 嘗試將代碼更改為此:

#!/bin/bash
pushd /root/etlegacy
/usr/bin/screen -d -m -S etserver /root/etlegacy/etlded
popd

當我一切正常,在/root/etlegacy/etlded [...],並通過運行腳本: ./start.sh

...

但是,當我使用腳本的完整路徑(即/root/etlegacy/start.sh

好吧,那是你的問題。 聽起來腳本的完整路徑實際上是:

/root/etlegacy/etlded/start.sh

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM