Mám malý bash jeden parník, ktorý zasiahne Mongo a dostane nejaké štatistiky - a hoci to funguje dobre, chcem tiež získať dátum na predponu. Tu je aktuálny kód, ktorý funguje:
--quiet --eval "db.getCollectionNames().forEach(function (n) { var s = db[n].stats(); print("namespace=" + s["ns"] +",count=" + s["count"]+",avgObjSize=" + s["avgObjSize"]+",storageSize=" + s["storageSize"]) })"
Teraz chcem vytlačiť aj dátum pred menovkou, takže som vyskúšal niekoľko vecí, ale nemohol som to uviesť do práce ... myšlienky?
d="$(date +"%D %r %Z")"
Unavil som ho pridať ako nový VAR ...
{ var s = db[n].stats(); **var d="$(date +"%D %r %Z")";** print(**d**"namespace=" + s["ns"] +",count=" + s["count"]+",avgObjSize=" + s["avgObjSize"]+",storageSize=" + s["storageSize"]) })"
ale žiadne také šťastie na výstupe
EDIT Tiež sa pokúsil pridať ho pred --eval a zatiaľ čo eval funguje na mongo strane, stále nemôžem získať dátum na tlač.
d="$(date +"%D %r %Z")" --quiet --eval "db.getCollectionNames().forEach(function (n) { var s = db[n].stats(); print("namespace=" + s["ns"] +",count=" + s["count"]+",avgObjSize=" + s["avgObjSize"]+",storageSize=" + s["storageSize"]) })"
odpovede:
2 pre odpoveď č. 1Je to váš miestny bash, ktorý formátuje dátum, takže je to iba reťazec v javascripte:
--quiet --eval "db.getCollectionNames().forEach(function (n) { var s = db[n].stats(); print("d=$(date +"%D %r %Z") namespace=" + s["ns"] +",count=" + s["count"]+",avgObjSize=" + s["avgObjSize"]+",storageSize=" + s["storageSize"]) })"