0
我有一個簡單的bash腳本來執行MongoDB:bash腳本不執行mongod的命令
#!/bin/bash
sudo mongod --dbpath data/db
echo "Mongo is running!"
在終端,我執行:
. ./mongo.sh
我確信,該目錄是正確的,我已經將我的權限CHMOD改爲751,所以我應該能夠執行腳本。而是我得到這個錯誤:
2016-08-28T16:15:15.311-0400 I CONTROL [initandlisten] allocator: system
2016-08-28T16:15:15.311-0400 I CONTROL [initandlisten] modules: none
2016-08-28T16:15:15.311-0400 I CONTROL [initandlisten] build environment:
2016-08-28T16:15:15.311-0400 I CONTROL [initandlisten] distarch: x86_64
2016-08-28T16:15:15.311-0400 I CONTROL [initandlisten] target_arch: x86_64
2016-08-28T16:15:15.311-0400 I CONTROL [initandlisten] options: { storage: { dbPath: "data/db" } }
2016-08-28T16:15:15.312-0400 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory data/db not found., terminating
2016-08-28T16:15:15.312-0400 I CONTROL [initandlisten] dbexit: rc: 100
Mongo is running!
當我在shell窗口中執行該命令運行「的mongod --dbpath數據/ DB」沒有問題,所以我在做什麼錯?
我認爲這可能與shell腳本執行的「子進程」有關嗎?但我真的不知道我從來沒有寫過bash腳本...... – arbabk
我建議將完整路徑添加到data/db。 – Cyrus
是的!這工作...我不相信我沒有想到這一點。如果你想要點,請添加爲答覆,否則謝謝你! – arbabk