Hello,
I am writing a script which, among other things, generates Nginx configuration. Unfortunately, I ran into a problem. In Nginx config, I need to type $1
. I use the following method for this:
cat > /etc/nginx/sites-available/website <<EOL
...
rewrite ^/api/?(.*)$ /web/api.php?url=$1 last;
...
EOL
This makes the output file look like this:
...
rewrite ^/api/?(.*)$ /web/api.php?url= last;
...
How do I make cat not interpret $1
as a parameter?
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Accepted Answer
Hello,
What you could do is just use a backtick to escape the dollar sign:
cat > /etc/nginx/sites-available/website <<EOL
...
rewrite ^/api/?(.*)$ /web/api.php?url=\$1 last;
...
EOL
Hope that this helps Regards, Bobby
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.