Я развертываю свой проект на сервере с помощью команды scp. В рамках процесса развертывания я загружаю на сервер файл .htaccess. Локально для среды установлено значение DEVELOPMENT:
#Set environment
#[PRODUCTION, STAGING, TESTING, DEVELOPMENT]
SetEnv KOHANA_ENV 'DEVELOPMENT'
Однако при загрузке на сервер его необходимо изменить на PRODUCTION. Есть ли способ сделать это с помощью ssh?
Вы можете напрямую записывать файл локально следующим образом:
echo "#Set environment
#[PRODUCTION, STAGING, TESTING, DEVELOPMENT]
SetEnv KOHANA_ENV 'PRODUCTION'" > /path/to/.htaccess
Не забудьте заменить /path/to/ на путь до .htaccess, а затем скопировать файл с помощью scp. Это заменит содержимое файла.
Если вы хотите преобразовать только 28-ю строку, вы можете сделать:
sed '28s/DEVELOPMENT/PRODUCTION/' file
(возможно, комбинация с опцией -i)
Если вы хотите избежать изменения локальный файл, вы можете сделать:
< /local/path/to/.htaccess sed '28s/DEVELOPMENT/PRODUCTION/' | ssh user@host "cat > /server/path/to/.htaccess"