질문DOS의 "dir /s /b 파일 이름"에 해당하는 Linux는 무엇입니까?가깝지만 이름이 지정된 모든 파일 이름에 대해 파일 조회 작업을 수행하게 됩니다.
그러나 Windows 시스템의 디렉터리와 디렉터리 콘텐츠 비교를 수행하고 이를 Windows 시스템의 유사하게 구성된 디렉터리와 비교하고 싶습니다.QNX상자. 두 컴퓨터 모두에서 디렉터리 열거 명령을 실행하고 일부 텍스트 파일 조작을 수행하여 경로 구분 기호와 루트 드라이브를 변환하고 호환되는 형식으로 변환하지 않아 큰 차이를 얻고 싶습니다.
이를 사용하여 그 안에 있는 모든 하위 디렉터리와 파일의 폴더 인벤토리를 생성 dir /b /s
하고 여러 경로 형식으로 출력을 얻을 수 있습니다.
c:\Temp>dir /b /s
c:\Temp\Subfolder1
C:\Temp\Subfolder1\File1.txt
C:\Temp\Subfolder1\File2.txt
...
dir /s
가 되는 것을 볼 수 있지만 동등한 경로 출력 형식을 ls -R
얻으려면 어떻게 해야 합니까 ?/B
답변1
어떤 플래그도 ls
원하는 대로 작동하지 않지만 여러 가지 다른 도구를 사용하여 이를 수행할 수 있습니다. 가장 간단한 것은 (아마도) 다음과 같습니다 find
.
find .
답변2
find
당신에게 필요한 모든 것을 줄 수 있습니다. 단독으로 수행하는 것보다 더 많은 테스트를 수행 하므로 약간 더 비용이 많이 들지만 ls
, 경로 정보를 출력에 포함시키려는 경우 이 방법이 아마도 가장 쉬운 방법일 것입니다.
두 시스템을 비교하는 경우 먼저 일부 텍스트 편집을 수행한 후 로 바꾸고 \
접두사 를 /
제거해야 합니다. C:
그런 다음 목록이 정렬되어 diff
변경 사항을 검색하는 데 사용됩니다. sed
여기에서 당신의 친구가 될 것입니다. 이것도 원하시면 댓글로 문의주세요.
답변3
나무라면
-i 들여쓰기하지 않음 -f 인쇄 경로
답변4
실제 경로 접두어를 얻으려면(중요하다고 가정) 다음을 수행하십시오.
find "$(pwd)"