LINUX.ORG.RU

Записать текст в файл

 


0

2

Добрый день.

Есть следующий текст:

#!/bin/bash
#
NAME="my_server"                                # Name of the application
DJANGODIR=$MY_HOME                              # Django project directory
SOCKFILE=$FOR_SOME/run/gunicorn.sock              # we will communicte using this unix socket
USER=ubuntu                                               # the user to run as
GROUP=webapps                                 # the group to run as
NUM_WORKERS=3                                     # how many worker processes should Gunicorn spawn
DJANGO_SETTINGS_MODULE=my_server.settings   # which settings file should Django use
DJANGO_WSGI_MODULE=my_server.wsgi               # WSGI module name
#
echo "Starting $NAME as `whoami`"
#
# Activate the virtual environment
cd $DJANGODIR
source ../bin/activate
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$DJANGODIR:$PYTHONPATH
#
# Create the run directory if it doesn't exist
RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR
#
# Start your Django Unicorn
# Programs meant to be run under supervisor should not daemonize themselves (do not use --daemon)
exec ../bin/gunicorn ${DJANGO_WSGI_MODULE}:application \
  --name $NAME \
  --workers $NUM_WORKERS \
  --user=$USER --group=$GROUP \
  --bind=unix:$SOCKFILE \
  --log-level=debug \
  --log-file=$FOR_SOME/logs/gunicorn_my_server.log

Как этот текст записать в файл в bash скрипте? Через echo " не получается.

Запиши его в файл руками
А потом
cat file1 > file2

wasd ()
Последнее исправление: wasd (всего исправлений: 1)
cat <<'EOF' > filename
#!/bin/bash
#
NAME="my_server"                                # Name of the application
DJANGODIR=$MY_HOME                              # Django project directory
SOCKFILE=$FOR_SOME/run/gunicorn.sock              # we will communicte using this unix socket
USER=ubuntu                                               # the user to run as
GROUP=webapps                                 # the group to run as
NUM_WORKERS=3                                     # how many worker processes should Gunicorn spawn
DJANGO_SETTINGS_MODULE=my_server.settings   # which settings file should Django use
DJANGO_WSGI_MODULE=my_server.wsgi               # WSGI module name
#
echo "Starting $NAME as `whoami`"
#
# Activate the virtual environment
cd $DJANGODIR
source ../bin/activate
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$DJANGODIR:$PYTHONPATH
#
# Create the run directory if it doesn't exist
RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR
#
# Start your Django Unicorn
# Programs meant to be run under supervisor should not daemonize themselves (do not use --daemon)
exec ../bin/gunicorn ${DJANGO_WSGI_MODULE}:application \
  --name $NAME \
  --workers $NUM_WORKERS \
  --user=$USER --group=$GROUP \
  --bind=unix:$SOCKFILE \
  --log-level=debug \
  --log-file=$FOR_SOME/logs/gunicorn_my_server.log
EOF
Ip0 ★★★★ ()
Последнее исправление: Ip0 (всего исправлений: 1)
cat > target.sh <<EOF
  # text
EOF

См. man bash (here-document).

ABW ★★★★★ ()
Ответ на: комментарий от Ip0

Спасибо! Работает)

Правда я сделал уже с экранированием кавычек \ через echo.

Closius ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.