나는 리눅스를 처음 접했고 디렉토리의 파일과 하위 디렉토리의 모든 이름을 인쇄하는 쉘 스크립트를 작성 해야하는 과제가 있는데 (매개 변수로 제공) 모든 파일에 대해 동일한 이름의 파일 수를 인쇄해야합니다 이 디렉토리에서.
내 문제는 모든 파일과 디렉토리의 이름을 인쇄하고 작업의 두 번째 부분을 수행 할 수 있었지만 함께 가져올 수 없다는 것입니다. 즉, 출력에는 두 가지 부분이 있습니다.
/some/path
a1
a2
a3
a1 1
a2 1
#a1, a2 files and a3 directory
그리고 다음과 같이 보일 것입니다 :
a1 1
a2 1
a3
이것은 내가 쉘 스크립트를 작성하는 데 사용한 코드입니다.
#the first part that prints all the names from the directory
mydir=$1
cd $mydir
ls -l $mydir | awk '{print $9}'
#the second part that prints the number of files with the same name for every file
file=$(find $mydir -type f -printf '%f\n' | sort | uniq -c)
echo $file
기존 답변이 문제를 해결합니까? 그렇다면 확인 표시가있는 것을 잊지 마십시오. 감사합니다! 그렇지 않은 경우 어떤 일이 있었는지 알려주십시오.
—
Jeff Schaller