해결할 수 없는 Linux 질문이 하나 있습니다. 나는 그것을 해결하려고 노력했습니다. 또한 포럼을 검색하려고 시도했지만 단서나 해결 방법을 찾지 못했습니다.
질문:
야채와 과일 폴더에 있는 파일의 양을 함께 세는 명령을 작성하세요. 답변은 CounterFood 파일에 저장되어야 합니다. 여러 명령이 허용됩니다.
다음 명령을 실행하면 해당 명령을 실행하라는 메시지가 표시됩니다.
야채 및 과일 폴더에 있는 파일 이름의 총 문자 수를 CounterFood 파일에 추가해야 합니다. 여러 명령을 사용할 수 있습니다.
노력하다
산술 삽입을 하려고 했는데 그런 명령을 찾지 못했습니다.
ls -l . Vegetables Fruits | egrep -c '^-' >> CounterFood
파일이 몇 개인지 세어보려고 했지만 두 폴더를 합친 수는 없었습니다. 그런 다음 나는 이것을 생각해 냈습니다. 내 생각은 폴더에 액세스하여 모든 파일을 찾은 다음 그 수를 세는 것입니다.
find Vegetables Fruits -type f | wc - >>CounterFood
질문의 지속은 시작과 직접적인 관련이 있습니다. 하지만 처음에는 잘 풀리지 않았습니다. 이유를 이해할 수 없습니다.
답변1
1 부
find Vegetables Fruits -type f -printf "x" | wc -c > CounterFood # Print "x" for each filename and count them
2 부
당신이 의미했다면추가하다그러면 이게 효과가 있을 거야
namelen=$(find Vegetables Fruits -type f -printf "%f" | wc -c) # Characters in file names
counterfood=$(cat CounterFood) # Previous total
echo $((namelen + counterfood)) > CounterFood # Add them together
당신이 의미했다면추가그러면 이게 효과가 있을 거야
find Vegetables Fruits -type f -printf "%f" | wc -c >> CounterFood # Characters in file names
답변2
두 폴더의 총 파일 수:
expr `ls -l Vegetables | sed 1d | wc -l` + `ls -l Fruits | sed 1d | wc -l` >> CounterFood
두 폴더의 파일 이름 총 문자 수:
expr `ls Vegetables | wc -c` + `ls Fruits | wc -c` >> CounterFoods
이것이 도움이 되기를 바랍니다!