스크립트에 문제가 있습니다. test.cfg 파일이 없으면 올바른 암호가 test.cfg 파일에 기록되지만 test.cfg 파일이 있으면 암호가 설정됩니다. 변경되지 않습니다. 여기 sed와 큰 따옴표
는 test.cfg가 존재하지 않습니다 이#!/bin/bash
while test $# -gt 0; do
case "$1" in
"-password")
password="$2"
shift
;;
esac
shift
done
grep "password = " test.cfg &>/dev/null
if [[ $? -eq 0 ]]; then # Vorhanden!
sed -i test.cfg -e "s/^\(password = \).\"*$/\1${password}\";/"
else # Nicht vorhanden!
echo "password = \"${password}\";" >> test.cfg
fi
내용
password = "mysecret";
로 만든하지만 지금은 선이 그 존재한다 -password test.sh mysecret 내 스크립트입니다
: 암호 -password mynewsecret를 test.sh로 변경되지 않습니다그것은 단지로 변경 얻을 것
password = mynewsecret;
암호를 실제로 일반 텍스트로 저장하지 않거나 (있는 경우) 보안을 중요하게 생각하지 않는다고 생각합니다. 암호는 단지 오용을 방지하기위한 단순한 보호 일뿐입니다. –
이 암호는 gameserver를 보호하기위한 것입니다. 사용하고있는 인터페이스는 게임과 매우 호환되지 않습니다. 다른 hlds, srcds – GenXRoad