我一直在尋找這個例子在這裏:執行Node.js的文件中bash腳本
https://bbs.archlinux.org/viewtopic.php?id=168479
它說我可以執行JS/Node.js的是這樣的:
#!/bin/sh
exec node --harmony <<EOF
console.log("hello")
EOF
不對任何人都有意義?究竟發生了什麼?
一些谷歌搜索看起來像這樣將EOF字符之間的數據拉到標準輸入。
如果這是可能的,它將允許我解決一個特定的問題 - 即使用用戶$ PATH中的任何可執行節點,同時仍然傳遞節點可執行標誌(在本例中爲「--harmony」)。
如果你看看鏈接,你只需要稍微查看一下上面的代碼。
任何人都可以解釋這個EOF語法是關於什麼的?
一個具體的問題,我有,是我無法運行此代碼:
我的猜測是,我們通過標準輸入到Node.js的可執行文件,以及由於某種原因,它不能正確解析路徑 -
即使cli.js是在同一個目錄中cli-inspect.sh,需要功能無法正常工作。在第一行中,我們看到__dirname是「。」,通常情況並非如此。
對你而言,我不清楚你的問題。 –
這是什麼「EOF EOF語法? –
它是'Here Document' https://en.wikipedia.org/wiki/Here_document#Unix_shells –