안녕하세요, file1.txt에 'sed'명령을 실행하고 StringA와 StringB 사이에있는 모든 이름을 추출해야합니다. 예 : "Nickname": "bad_name", bad_name을 추출한 다음 저장합니다. 모든 결과도 Output.txt입니다. 이게 가능한가 아니면 다른 명령을보아야 하는가?sed 명령 줄
sed 명령 줄
답변
file1.txt의 샘플을 더 표시하지 않고 일관된 데이터 형식이 있다고 가정합니다. 이 경우, 다음 파일에 대한 AWK
echo '"Nickname":"bad_name"' | awk -F":" '{print $NF}'
, 단지 입력 파일 이름
awk -F":" '{print $NF}' file > output.txt
그렇지 않으면 사용하는 우리가 함께 작동하도록 더 많은 샘플 데이터를 제공합니다.
은 나오지 사용 :
[email protected]:~$ cat file1
"Nickname":"bad_name"
"First Name":"Dmitry"
bad line
"Dog Name":"Chuppy"
another bad line
[email protected]:~$ cat file1 | sed -e '/\(.\+\)":"\(.\+\)"/!d' -e 's/"\(.\+\)":"\(.\+\)"/\2/'
bad_name
Dmitry
Chuppy
첫 번째 표현은, 두 번째는 2 일치하는 그룹과 패턴 형식이 잘못된 라인을 대체 삭제합니다 - 두 번째 따옴표의 내용을.
파일에 다른 사용자 정보가 있으므로 "Nickname ":"(따옴표 포함) 및 끝 문자열 ", 예 :"Nickname ":"bad_name ", 출력 : bad_name으로 bad_name을 추출합니다. : 이름이 시작되는 위치를 결정하는 데 자체적으로 사용할 수 없습니다. 오직 다른 데이터에서 유일하지 않기 때문에 우리에게 : – acctman
글쎄,이 경우 표현의 첫 번째 부분 (첫 번째 하위 패턴)을''닉네임 ''으로 변경해야합니다. 그러면 명령어는 다음과 같습니다 : 'cat file1 | sed -e '/ "닉네임": "\\(.\+\\)"/!d'-e '/"닉네임 ":"\\ (. \ + \\) "/ \ 1 /'' – dmedvinsky
목록에있는 명령을 시도했지만 파일 내용 만 표시했습니다. sed 명령이 실행되거나 출력되지 않았습니다. cat file1.txt | sed -e '/ "닉네임": "\\(.\+\\)"/!d'-e '/"닉네임 ":"\\ (. \ + \\) "/ \ 1 /' – acctman
- 1. sed 줄 끝 바꾸기
- 2. 간단한 SED 명령
- 3. grep 및 sed 명령
- 4. HTML에서 텍스트를 추출하는 sed 명령
- 5. 파일과 패턴을 일치시키는 sed 명령
- 6. 명령 줄 명령 구문 분석
- 7. 여러 대체에 대한 단일 sed 명령?
- 8. 마지막 줄을 자르는 Sed 스크립트 명령
- 9. 명령 줄 도구
- 10. 변경 명령 줄 인수
- 11. Perl 명령 줄 문제
- 12. cassandra 명령 줄
- 13. 3dsmax.exe 명령 줄 스위치
- 14. 명령 줄 인수
- 15. dicom dcmmkdir 명령 줄
- 16. 추출 명령 줄 인수
- 17. MySQL 명령 줄 스크립트
- 18. 명령 줄 세마포어 유틸리티
- 19. JUnit 명령 줄 테스트
- 20. 명령 줄 프로그램 호출
- 21. WinMain 명령 줄 인수
- 22. 빔 분할 줄 명령
- 23. 명령 줄 인수 배열
- 24. Powershell의 명령 줄 인수
- 25. MSTest 명령 줄 설정
- 26. Perl 명령 줄 입력?
- 27. 모두 변경 명령 줄
- 28. 강력한 명령 줄 유틸리티는
- 29. Python 명령 줄 실행
- 30. Python 명령 줄 UI
StringA 및 StringB 란 무엇입니까? 인용 부호? –
이 예제에서'StringA'와'StringB'는 무엇입니까? 항상':'다음에 나오는 단어입니까 아니면 실제로 변경되지 않는 문자열을 찾고 계십니까? – Wolph
몇 줄의 샘플 입력과 출력을 게시 할 수 있다면 누군가가 도울 수있을 것입니다. 당신이 요구하는 것이 명확하지 않습니다. –