실제 숙제 문제는
- 루트에 속하지 않고 7월에 생성되지 않은 모든 파일/디렉터리를 나열합니다.
사용할 방법을 못찾겠어요
엘에스
그리고
grep
출력 파일 ~/NotOwnedByRoot.txt
find / \! -user root -d -maxdepth 1 -exec ls > ~/NotOwnedByRoot.txt {} +
나도 시도했다
find / \! -user root -type d -maxdepth 1 > ~/NotOwnedByRoot.txt
오류가 발생했습니다.
find: 경고: 옵션이 아닌 인수 ! 뒤에 -max깊이 옵션을 지정했지만 옵션은 위치 지정이 아닙니다(-max깊이는 뒤에 지정된 테스트뿐만 아니라 이전에 지정된 테스트에도 영향을 미칩니다). 다른 매개변수보다 먼저 옵션을 지정하십시오.
답변1
grep과 함께 ls를 사용할 수 있으며 매우 간단합니다. grep에서 -v 옵션을 사용하면 존재하지 않는 단어나 문구를 검색할 수 있으므로 검색과 관련 없는 모든 항목이 출력됩니다.
이 작업을 수행하려는 디렉터리에서 다음을 시도해 보세요.ls -l | grep -v 루트 ||
첫 번째 부분ls-l긴 목록 순서로 모든 파일 나열
이것|기호는 파이프라고 하며 이전 명령의 입력을 가져와 다음 명령의 입력으로 사용합니다. 이 경우 ls -l은 "grep"의 입력으로 사용됩니다.
두 번째 부분grep -v 루트 디렉토리grep을 사용하여-V옵션, 검색어 루트와 함께 사용됨-V검색 중인 항목이 없는 모든 항목을 찾는 옵션을 사용하면 "루트"가 없는 모든 항목을 찾을 수 있습니다.
드디어 마지막 부분에 도착했습니다||7월, 이것||기본적으로 grep에서는 "and"를 의미하므로 두 개 이상의 검색어를 지정하면 "July"가 두 번째 검색어가 됩니다. ***
추신: 질문은 "NOTOWNEDBYROOT"라는 파일을 생성하라는 것이 아니라 루트가 아니거나 7월에 생성된 모든 파일/하위 디렉터리를 디렉터리에서 검색하라는 것입니다.