2014-04-21 3 views
0

다음과 같은 문제가 있습니다. 도시명을 키보드에서 허용해야합니다. 이 도시 목록은 도시 파일 목록에있는 도시 목록과 결합해야합니다. 이 결합 된 목록은 정렬되어야하며 정렬 된 출력은 newfile 파일에 저장되어야합니다. 파이프 라이닝을 사용하여 해결해야합니다. 다음과 같은 파이프 라인을 썼습니다 :cat 출력을 리디렉션하여

cat >> cityfile | sort > newfile 

sort | cat >> cityfile > newfile 

정렬 명령에 어떻게 cityfile의 데이터를 전달할 수 있습니까?

+2

사양이 모호합니다. "이 도시 목록은 도시 파일 파일에있는 도시 목록과 결합되어야합니다"라는 말은 해당 파일에 입력 된 도시를 추가하거나 두 목록을 모두 정렬로 보내는 것을 의미 할 수 있습니다. 당신은 후자가 더 나에게 의미가있는 반면 전자를 추측하고있는 것처럼 보입니다. – ooga

+0

먼저 조사를하지 않고 학교 프로젝트를 수행하도록 요청하는 것 같습니다. http://www.tldp.org/LDP/abs/html/을 살펴보고 구체적인 질문이있는 경우 다시 방문하십시오. –

+0

@ooga 예 전 전자를 추측하고 있습니다. – jahan

답변

2

cat 명령은 입력을 연결합니다. 입력 파일은 stdin 일 수 있습니다. stdin의 공통 키는 "-"입니다. 이것은 cat 명령에도 적용됩니다. 그러면 다음을 수행 할 수 있습니다.

cat - cityfile | sort > newfile 

이 정보는 man cat과 같습니다.

+0

일하지 않습니다! – jahan

+4

'cat'은 여기에도 필요 없습니다 - 그냥'sort - cityfile> newfile' ... – twalberg

+0

좋은 지적입니다. 그리고 @ jahan 네, 일하고 있습니다 .. – ypnos

1

귀하의 의견을 바탕으로, 이것을 두 단계로 구분해야합니다 : 새로운 도시를 목록에 먼저 추가 한 다음 정렬하십시오.

cat >> filename 
sort filename > newfile 
관련 문제