![Skype 알림 상태 전환](https://linux55.com/image/38029/Skype%20%EC%95%8C%EB%A6%BC%20%EC%83%81%ED%83%9C%20%EC%A0%84%ED%99%98.png)
연락처가 온라인/오프라인인지 여부에 대한 알림은 다음과 같은 방법으로 변경할 수 있습니다.스카이프 옵션또는 via를 통해 ~/.skype/your_skype_id/config.xml
이 파일에서 선택 사항에 따라 다음 줄을 찾을 수 있습니다.
<Notify>
<Chat>0</Chat>
<Offline>1</Offline>
<Online>1</Online>
</Notify>
여기서 <Offline>n</Offline>
(각각 <Online>n</Online>
)은 다음에 해당합니다."연락처 정보가 오프라인 상태입니다."(각기."연락처 정보가 온라인에 있습니다.") 옵션 n
이 켜져 있는지 여부를 명시적으로 나타냅니다.
그래서 내 질문은 다음과 같습니다.알림을 자동으로 켜거나 끌 수 있나요?
Offline
은 Online
파일에 한 번만 표시된다는 점에 유의하는 것이 중요합니다 XML
.
지금까지 내가 할 수 있는 일은 다음과 같습니다.
sed -i config.xml -e '197s!<Online>1</Online>!<Online>0</Online>!'
줄 번호는 어디에 있고 197
(경우에 따라 매우 나쁨) 알림의 기존 상태를 확인하지 않고 그냥 끕니다.
간단히 말해서, 내가 하고 싶은 일은 자동으로 두 줄을 0
다음으로 변경 1
(또는 1
변경)하는 것입니다.0
답변1
이것은 bash/shell 스크립트에 대한 작업처럼 들립니다.
내가 원하는 것은 grep을 사용하여 간단한 if 문을 만들어 파일에서 1 또는 0을 검색한 다음 가지고 있는 명령을 사용하여 바꾸는 것입니다. 설명하다:
if grep -q "<Online>1</Online>" "config.xml"; then
echo "Statement Returned True, Will now execute"
sed -i config.xml -e '197s!<Online>1</Online>!<Online>0</Online>!'
elif grep -q "<Online>0</Online>" "config.xml"; then
echo "Statement Returned True, Will now execute"
sed -i config.xml -e '197s!<Online>0</Online>!<Online>1</Online>!'
fi
if grep -q "<Offline>1</Offline>" "config.xml"; then
echo "Statement Returned True, Will now execute"
sed -i config.xml -e '197s!<Online>1</Online>!<Online>0</Online>!'
elif grep -q "<Offline>0</Offline>" "config.xml"; then
echo "Statement Returned True, Will now execute"
sed -i config.xml -e '197s!<Online>0</Online>!<Online>1</Online>!'
fi
run.sh나 다른 파일에 넣으세요.