2013-08-12 2 views
0

sed를 사용하여 백분율 코드로 URL을 작성 중입니다. 화학 물질은 단순화 된 분자 입력 라인 입력 시스템 (SMILES)을 사용하여 나타낼 수 있습니다. 참조 : http://en.wikipedia.org/wiki/SMILES 여기sed를 사용하여 퍼센트 인코딩으로 URL을 ASCII로 변환하는 방법

는 화학 철 - 황 - 몰리브덴 보조 인자에 대한 SMILES 코드 :

[O-]C(=O)CCC1(CC([O-])=O)O[Mo]23(OC1=O)[S]1[Fe]45S[Fe]67[S]8[Fe]9[S]6[Fe]6%10S[Fe]%11([S]24)[S]3[Fe]11S[Fe]8([S]96)[N]57%10%111 

일부 화학 사이트의 URL에서 SMILES를 사용하여 액세스 할 수 있습니다. 보시다시피 (원자 [Fe]6[N]57) SMILES에는 % % 기호가 포함될 수 있습니다.

% 기호를 URL 이스케이프 코드 %25으로 변환해야합니다.

sed -e "s/\%/\%25/g" <C:\1.txt> C:\2.txt 

그러나이 오류 메시지가 반환 : 나는 스크립트에서 볼 때, 또한

sed: -e expression #1, char 6: unterminated `s' command 

을 나는이 나오지 스크립트가 윈도우 7에 GnuWin32 나오지 버전 4.1.5.4013을 사용하고 있습니다 명령 모드 내가보기 :

sed -e "s/\25/g" C:\bin\1.txt > C:\bin\2.txt 

분명히 % 심볼이 제거되고 있습니다.

SMILES 문자열을 %으로 시작하는 URL 이스케이프 코드를 포함하도록 변환하기 위해 sed 스크립트를 수정하는 방법.

또한 awk 또는 gawk를 기꺼이 사용합니다.

미리 답변 해 주셔서 감사합니다. Windows 명령 쉘

+0

이 보인다 발행물. – danfuzz

답변

2

구문 : Windows 명령 쉘

sed "s/%/25%/g" file 

구문 ('배치') 스크립트가 더 나오지도 이상의 윈도우 스크립팅 문제처럼

@ECHO OFF &SETLOCAL 
sed "s/%%/25%%/g" file 
+0

완벽 고맙습니다. –

+0

@Endoro : 당신의 오래된 아바타가 당신의 사진으로 어떻게 되었습니까? – Aacini

+0

@Aacini 시간은 1/2 년 이후로 변경됩니다. :) – Endoro

관련 문제