添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I want to make sure node is running when logging in. So in my .bashrc file I have:

pkill node
sleep 1
node server.js &

Of course, that doesn't check if node is running... it simply kills it and starts it up again. Instead I'd like something like this:

node_process = $(pidof node)
if [not_exists node_process]; then
  node server.js &

The problem is the not_exists method doesn't seem to exist :). How do I test the existence of a number or string in Bash and is this the best way to ensure node is up and running upon login?

This seems like exactly what I'm looking for. Can I just move the $(pidof node) inside the if condition? Curious why I need 2 square brackets around the if condition? – at. Oct 10, 2013 at 20:22 The double brackets are just a more friendly bash version of the single brackets. And yes, I think if ! pidof node; then node server.js & fi should work fine. – chepner Oct 10, 2013 at 20:49

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.