shell 引入子脚本,脚本字符串中换行与空格

# nginx 初始化,父脚本中的变量会自动传入引入的脚本中
. init/nginx.sh

子脚本内容

#!/bin/bash

# 生成nginx配置
# cur_dir=$(pwd)
# cur_dir=$(dirname $(pwd))
# input_name=demo
# input_domain=jiqing.demo.com
nginx_str="server

    {

    	    listen 80;

    	    #listen [::]:80 default_server ipv6only=on;

    	    server_name ${input_domain};

    	    index index.html index.htm admin.php;

    	    root ${cur_dir}/web-admin/Public;

    	    #error_page   404   /404.html;

    	    include enable-php-pathinfo.conf;


    	    location /nginx_status

    	    {

    	        	stub_status on;

    	        	access_log   off;

    	    }


    	    location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$

    	    {

    	        	expires      30d;

    	    }


    	    location ~ .*.(js|css)?$

    	    {

    	        	expires      12h;

    	    }


    	    location ~ /.

    	    {

    	        	deny all;

    	    }


    	    access_log  /home/wwwlogs/access.log;

    }"

nginx_conf_file="/usr/local/nginx/conf/vhost/$input_name.conf"
if [ ! -f $nginx_conf_file ]; then
    touch $nginx_conf_file
fi

/bin/echo -e $nginx_str >$nginx_conf_file

# 重启nginx
nginx -s reload

原文地址:https://www.cnblogs.com/jiqing9006/p/13083337.html