Use $(...) notation instead of legacy backticks
...
46 # mkdir pytorch-build
47 cd /tmp/pytorch-build
48 # Build Torch
49 cmake -DBUILD_SHARED_LIBS:BOOL=ON -DCMAKE_BUILD_TYPE:STRING=Release -DPYTHON_EXECUTABLE:PATH=`which python3` -DCMAKE_INSTALL_PREFIX:PATH=../pytorch-install ../pytorch50
51 # Install Torch
52 cmake --build . --target install
Description
Consider using the $(...)
notation instead.
Backtick command substitution \
...`` is legacy syntax with several issues.
* It has a series of undefined behaviors related to quoting in POSIX.
* It imposes a custom escaping mode with surprising results.
* It's exceptionally hard to nest.
$(...)
command substitution has none of these problems, and is therefore strongly encouraged.
Problematic code:
echo "You are running on `uname`"
Preferred code:
echo "You are running on $(uname)"
Read more about it here:
- BashFq: Why is $(...)
preferred over \
...`` (backticks)?.