
연락처가 온라인/오프라인으로 표시되는지 여부에 대한 알림은 다음을 통해 변경할 수 있습니다.스카이프 옵션또는 ~/.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을 사용하여 파일에서 1 또는 0을 검색한 다음 가지고 있는 명령을 사용하여 바꾸는 간단한 if 문을 만드는 것입니다. 말하다:
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 같은 곳에 넣으세요.