이것은 아마 sed로 파일을 편집하는 방법에 대한 아이디어를 줄 것입니다.
cat inputFile.txt | sed -n '/^class Requests/,/^}/ p' | sed -e '/foreach/,$ d' | sed -e 's/\(function.*\)/\1\n autoAcceptMember($users);\n }\n}\n/'
출력 :
class Requests
{
function approveRequests($users){
autoAcceptMember($users);
}
}
inputFile.txt :
class here
{
are
some extra lines
}
class Requests
{
function approveRequests($users){
foreach($users as $user){
if(hasQualified($user)){
acceptUser($user);
}else{
rejectUser($user)
}
}
}
}
class here2 {
function are() {
some extra lines
also
}
가 사용 나오지도 및 정규식과 일치하고 인쇄 라인
사이3210
> cat inputFile.txt | sed -n '/^class Requests/,/^}/ p'
class Requests
{
function approveRequests($users){
foreach($users as $user){
if(hasQualified($user)){
acceptUser($user);
}else{
rejectUser($user)
}
}
}
}
사용은 나오지 및 정규식 일치와 네 개의 태그와 함께 경기를
sed -e 's/\(function.*\)/\1\n autoAcceptMember($users);\n }\n}\n/' will give the following, in context:
> cat inputFile.txt | sed -n '/^class Requests/,/^}/ p' | sed -e '/foreach/,$ d' | sed -e 's/\(function.*\)/\1\n autoAcceptMember($users);\n }\n}\n/'
class Requests
{
function approveRequests($users){
autoAcceptMember($users);
}
}
접두사 코드를 정규식, 대신에
나오지 사용과 일치 사이의 라인을 삭제하고 추가 공백 – Cyrus