sed 명령 초기 시험
sed 는 비 대화 형 텍스트 흐름 편집기 입 니 다.내 보 낼 텍스트 복사 파일 이나 표준 입력 을 편집 합 니 다.
sed 를 사용 할 때 기억 해 야 할 사실은 명령 이 무엇이든 sed 는 초기 화 파일 과 접촉 하지 않 습 니 다. 복사 만 한 다음 에 모든 변경 사항 이 파일 로 바 뀌 지 않 으 면 화면 에 출력 합 니 다.
sed 는 비 상호작용 편집기 이기 때문에 줄 번호 나 정규 표현 식 을 통 해 변경 할 텍스트 줄 을 지정 해 야 합 니 다.
1) sed 는 파일 의 텍스트 줄 이나 표준 입력 된 몇 가지 형식 에서 데 이 터 를 읽 고 편집 버퍼 로 복사 한 다음 명령 줄 이나 스 크 립 트 의 첫 번 째 명령 을 읽 고 이 명령 찾기 모드 를 사용 하여 다 중 위치 추적 줄 번 호 를 편집 합 니 다.명령 이 끝 날 때 까지 이 과정 을 반복 합 니 다.2) sed 세 가지 방식 을 호출 합 니 다. 명령 행 에 명령 을 입력 합 니 다.sed 명령 을 스 크 립 트 파일 에 삽입 하고 sed 를 호출 합 니 다.sed 명령 을 스 크 립 트 파일 에 삽입 하고 sed 스 크 립 트 를 실행 할 수 있 도록 합 니 다. sed 명령 줄 의 형식 을 사용 합 니 다: sed [옵션] sed 명령 입력 파일 주의: 명령 줄 에서 sed 명령 을 사용 할 때 실제 명령 은 작은 따옴표 를 추가 하고 sed 도 작은 따옴표 를 추가 할 수 있 습 니 다.sed 스 크 립 트 파일 을 사용 하 는 형식 은: sed [옵션] - f sed 스 크 립 트 파일 입력 파일 sed 명령 해석 기 가 있 는 sed 스 크 립 트 파일 의 첫 줄 을 사용 하려 면 sed 스 크 립 트 파일 [옵션] 입력 파일 입 니 다. 3), sed 명령 의 옵션 n: 인쇄 하지 않 습 니 다. sed 는 편집 줄 을 표준 출력 에 쓰 지 않 습 니 다. 기본적으로 모든 줄 을 인쇄 합 니 다.p 명령 은 편집 줄 을 인쇄 하 는 데 사용 할 수 있 습 니 다.c: 다음 명령 은 편집 명령 f: sed 스 크 립 트 파일 을 호출 하고 있다 면 이 옵션 을 사용 하 십시오.이 옵션 은 sed 스 크 립 트 파일 이 sed - f my scirpt. sed input 와 같은 모든 sed 명령 을 지원 하 는 것 을 알려 줍 니 다.file 。여기 my script. sed 는 sed 명령 을 지원 하 는 파일 입 니 다.
2, sed 출력 저장
초기 화 파일 에 접촉 하지 않 기 때문에 변경 내용 을 저장 하려 면 모든 출력 을 파일 로 간단하게 바 꾸 면 됩 니 다.
$sed 'some-sed-commands' input-file > myoutfile
3. sed 를 사용 하여 파일 에서 텍스트 를 조회 하 는 방식
sed 입력 파일 을 탐색 할 때 기본 값 은 첫 줄 부터 두 가지 방식 으로 텍스트 를 찾 습 니 다.
1) 줄 번 호 를 사용 합 니 다. 간단 한 숫자 나 줄 번호 범위 2) 정규 표현 식 일부 편집 명령 을 사용 할 수 있 습 니 다.
P: 일치 하 는 줄 인쇄 =: 파일 줄 번호 표시 a /: 줄 번호 지정 후 새 텍스트 정보 추가 i /: 줄 번호 지정 후 새 텍스트 정보 삽입 d: 포 지 셔 닝 줄 삭제 c /: 새 텍스트 로 포 지 셔 닝 텍스트 대체 s: 교체 모드 로 해당 모드 대체 r: 다른 파일 에서 텍스트 읽 기 w: 텍스트 를 파일 로 쓰기 q: 첫 번 째 모드 가 일치 한 후 종료또는 즉시 출시, l: 8 진 ASCII 코드 와 같은 값 의 제어 문 자 를 표시 합 니 다 {}: 포 지 셔 닝 줄 에서 실 행 된 명령 그룹 n: 다른 파일 에서 텍스트 다음 줄 을 읽 고 다음 줄 g 에 추가 합 니 다. 모드 2 를 / pattern n / y: 전송 문자 n: 다음 입력 줄 로 연결 합 니 다.줄 을 뛰 어 넘 는 패턴 이 구문 sed 와 정규 표현 식 과 일치 하도록 허용 합 니 다.
4. 테스트
function removeLineForAssert(){
#$1 pattern to delete
#$2 file name
if [ -f ${CURL_LOG_DIRECTORY}/$2.resp ];then
sed /$1/d ${CURL_LOG_DIRECTORY}/$2.resp >${CURL_LOG_DIRECTORY}/new.txt
if [ -f ${CURL_LOG_DIRECTORY}/new.txt ];then
rm -r ${CURL_LOG_DIRECTORY}/$2.resp
mv ${CURL_LOG_DIRECTORY}/new.txt ${CURL_LOG_DIRECTORY}/$2.resp
else
echo "Failed to remove line from $2 to assert!"
fi
else
echo "Invalid input file!"
fi
}
줄 삭제, regex 지원, 문법 은 다음 과 같 습 니 다.
sed /duration/d test.txt>>new.txt
sed /pattern/d filename > > 방향 바 꾸 기
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.