홈 디렉토리의 10 개 서브 디렉토리 (1-10)에 데이터를 정렬하는 유닉스 쉘 스크립트를 작성하고 있습니다. 각 하위 디렉토리에서 스크립트는 hehd.output 및 fort.hehd.time 파일의 이름을 바꾸고 hehd.data 파일을 새 이름으로 .data 파일에 복사해야합니다.쉘 스크립트에서 변수가있는 파일 이름 지정
AA.BB.CC
AA = a variable in the hehd.data file within the subdirectory containing the file
BB = the name of the subdirectory containing the file (1-10)
CC = the original file name
각 하위 디렉토리는 hehd을 포함
: 나는 그것을 할 싶습니다 무엇
는 다음과 같은 형식으로 각 파일의 이름을 변경합니다. 데이터 파일이고 각 hehd.data 파일에는 ij0 = AA 문자열이 들어 있습니다. 여기서 AA는 동일한 하위 디렉토리의 파일 이름을 바꾸는 데 사용할 변수를 나타냅니다.
예를 들어: 실행하면 스크립트는 문자열 ij0 = 2에 대한 /home/4/hehd.data 검색 /home/4/2.4.hehd하는 /home/4/hehd.output 이동해야 .산출.
현재 grep 명령을 사용하여 스크립트에서 문자열 ij0 = *을 검색하고 하위 디렉토리 내의 새 텍스트 파일에 복사합니다. 그런 다음 문자열 ij0 =이 텍스트 파일에서 삭제 된 다음 해당 내용이 동일한 하위 디렉토리에있는 모든 대상 파일의 이름을 바꾸는 데 사용됩니다. 쉘 스크립트의 마지막 줄은 텍스트 파일을 삭제합니다.
저는 이것을 수행하는 더 좋은 방법을 찾고 있습니다. 동일한 스크립트로 10 개의 하위 디렉토리를 한꺼번에 정렬 할 수 있도록하는 것이 좋습니다. 내 스크립트는 매우 비효율적 인 것처럼 보였고, 내가 원하는 모든 것을 자체적으로 수행하지는 않습니다.
어떻게 향상시킬 수 있습니까?
조언이나 제안 사항을 보내 주시면 감사하겠습니다. 나는 더 나은 컴퓨터 사용자가되기 위해 노력하고 있으며 이는 일을 더 잘 수행하는 방법을 배우는 것을 의미합니다.
영어 의사 코드와는 달리 실제 코드를 입력 해보십시오. 구현 세부 사항이 중요하므로 구현 내용을 읽지 않고도 구현 내용을 볼 수 없습니다. –
(일반적으로 StackOverflow에는 특정 답변이있는 집중적 인 질문이 있으며, "X를 토론 할 수 있습니까?"로 해석 될 수있는 자유로운 질문은 "어떻게해야합니까? 문제 X를 해결할 수 있습니까? "라고 말하면서 구체적인 솔루션을 제공합니다. 범용"이 코드를 어떻게 개선 할 수 있습니까? "질문은 http : //codereview.stackexchange를 참조하십시오.co.kr/-하지만 재 게시하기보다는 사이트 규칙을 읽으십시오). –
... http://stackoverflow.com/help/dont-ask 유사한 영역을 포함합니다. –