I am learning nanomsg with its example. But the command line below made me confused.
./pipeline node0 ipc:///tmp/pipeline.ipc & node0=$! && sleep 1
I can understand that ./pipeline
refers to the executable file and node0
together with ipc:///tmp/pipeline.ipc
are the parameters passed to the program. The &
symbol means the command is executed in the background. According to this answer, if node0=$!
executed successfully then the terminal will sleep for 1 second. Here comes the problem:
What does node0=$!
mean? Especially what does $
and !
mean here?