Да, вы можете автоматически подписывать коммиты, установив параметр commit.gpgsign
.
Однако вам понадобится ключ типа PGP , а не ключ SSH. Что вы можете сделать, так это использовать gpg-agent в качестве ssh-агента .
Во-первых, вам не нужно cat
с grep
. Этого достаточно:
x="$(grep ConfigPath /scratch/env.properties)"
Во-вторых, я считаю, что это не то задание, которое вам нужно:
y=$(ConfigPath=/scratch/a/b)
Если вы хотите, чтобы переменная y
содержала строку ConfigPath=/scratch/a/b
, она должна быть:
y="ConfigPath=/scratch/a/b"
$(...)
— это замена команды в Bash .
В-третьих, вы должны использовать двойные кавычки в команде sed
, чтобы сделать расширение оболочки x
иy
:
sed "s/$x/$y/" env.properties
Также обратите внимание, что /
— плохой выбор при работе с путями Unix. потому что это разделитель. Используйте другой символ, например запятая:
sed "s,$x,$y," env.properties
Как отметил пользователь Кусалананда в комментарии ниже вы делаете это проще и лучше, используя только sed
и убедившись, что ConfigPath
находится в начале строки:
sed "s,^ConfigPath=.*$,ConfigPath=/scratch/a/b," env.properties