Python을 사용하여 셸 실행 파일(.sh)의 텍스트를 바꾸는 방법은 무엇입니까?

Python을 사용하여 셸 실행 파일(.sh)의 텍스트를 바꾸는 방법은 무엇입니까?

파일이 있는데 xxx.sh내용은 다음과 같습니다.

setsid ./start-meteor.sh >> /home/farah/StudioInstallation/Studio/bricks/platform/log/databricksastro.log 2>&1 < /dev/null &

위 내용을 다음과 같이 변경하고 싶습니다.

setsid ./start-meteor.sh >> /home/rose/validation/Studio/bricks/platform/log/databricksastro.log 2>&1 < /dev/null &

이 작업을 수행하려면 Python 코드가 필요합니다.

답변1

다음과 같이 원하는 이름으로 Python 스크립트를 호출할 수 있습니다.search_replace.py

#!/usr/bin/env python3
import fileinput
import re

for line in fileinput.input(inplace=1, backup='.bak'):
         line = re.sub('farah/StudioInstallation','rose/validation', line.rstrip())
         print(line)

이 스크립트를 실행하고 파일 이름을 xxx.sh인수로 전달하십시오.

$python search_replace.py xxx.sh

관련 정보