내 홈 디렉토리에 "ls * s *"라고 입력하면 터미널에 이름과 함께 모든 폴더와 파일이 표시됩니다 (예 : 음악). 하지만 "ls * si *"를 입력하면 아무 것도 표시되지 않습니다 (음악이 나열되어 있어야한다고 생각합니다). 왜 그런가요?와일드 카드 KornShell (ksh)
답변
이것은 환상입니다. 와일드 카드는 명령이 실행되기 전에 확장되며, "ls"가 표시하는 내용은 확장 결과 단어 수에 따라 다릅니다. "ls"는 여러 항목을 나열 할 때 목록에있는 각 폴더의 이름을 표시합니다. "ls"는 단 하나의 폴더를 나열 할 때 이름이없는 내용 만 표시합니다.
"ls * s *"를 입력하면 문자열에 "s"가 포함 된 이름이 두 개 이상 있으므로 문자열이 두 개 이상의 이름으로 확장됩니다. 결과는 "ls Desktop Music"과 같은 형식을 입력 한 것과 같습니다. 당신은 "LS * 실리콘 *"문자열 팽창을 입력하면
Desktop:
foo
Music:
iTunes
: "LS는"여러 가지를 나열 할 때 목록 등을 얻을 수 있도록,이 디렉토리 이름과 각 디렉토리의 내용을 보여줍니다 "si"가 포함 된 디렉토리의 유일한 이름이 "Music"이기 때문에 하나의 이름으로 만 변경됩니다. 결과는 "ls Music"을 입력 한 것과 같습니다. ,
iTunes
하는 "LS"를 만들기 위해 목록과 일치하는 경우에만 일을하지 자신을 "LS는"하나 개의 폴더를 나열 할 때 같은 목록을 얻을 수 있도록, 그것은, 이름없이 폴더의 내용을 보여줍니다 내용을 보려면 "ls -d * si *"를 사용하십시오. "-d"는 파일을 나열하는 것과 동일한 방식으로 디렉토리를 나열하고 내용을 나열하지는 않습니다.
감사, 나는 그것을 얻었다. 하지만 한 가지 더 질문이 있습니다. 내가 ls -d를 입력하면 나에게 "."을 표시합니다. 무슨 뜻이에요? 모든 폴더 만 표시하면 안됩니까? – CuriousGuy
@CuriousGuy : 단일 마침표 "."는 현재 디렉터리의 이름입니다. "ls"명령에서 내용 목록을 비워두면 기본적으로 "ls."를 입력 한 것처럼 현재 디렉토리가 나열됩니다. 일반적으로 현재 디렉토리의 내용을 나열합니다. "ls -d"를 입력하면 "ls -d"를 입력 한 것처럼 "ls"에 현재 디렉토리의 이름을 나열하도록 요청합니다. –
정말 고마워요. :) – CuriousGuy
- 1. KornShell (ksh) 둘러보기
- 2. 모든 KornShell (ksh) 스크립트를 종료하십시오.
- 3. Kornshell (ksh) 파일 나열/정렬
- 4. KornShell (ksh)에서 IFS를 올바르게 저장하는 방법
- 5. KornShell (ksh) 명령을 실행하기위한 Java 하위 프로세스
- 6. 와일드 카드
- 7. 와일드 카드
- 8. 와일드 카드?
- 9. 와일드 카드
- 10. 와일드 카드
- 11. 와일드 카드
- 12. 와일드 카드
- 13. KornShell 정규식
- 14. Unix에서 KornShell (ksh) 스크립트를 실행하려면 권한 설정이 필요합니까?
- 15. KornShell (ksh) 스크립트 명령의 문자, 문자 상수 및 변수 이스케이프
- 16. KornShell (ksh)의 왼쪽 아래 키를 수정하십시오. 명령 행
- 17. Struts 와일드 카드 대 타일 와일드 카드 NoSuchDefinitionException
- 18. Heroku에서 와일드 카드 SSL과 함께 와일드 카드 SSL 사용
- 19. 업데이트에 와일드 카드 사용?
- 20. 클래스 와일드 카드 'DIV * {.'
- 21. 파이썬의 와일드 카드?
- 22. domxpath 정규식 와일드 카드
- 23. MYSQL 검색/와일드 카드
- 24. 어떻게 와일드 카드
- 25. Solr의 와일드 카드 검색
- 26. 와일드 카드 제네릭
- 27. Lxml cssselect 와일드 카드
- 28. Laravel의 와일드 카드
- 29. SQLLoader 와일드 카드
- 30. Underscorejs는 와일드 카드 _.where
그것은 음악 속에서 당신을 보여주고 있습니다. 아마도 당신은 아무 것도 가지지 않았을 것입니다.'* si *'는 * i si *에 대해'ls Music /'do '로 번역되고 있습니다; do echo $ i; 완료 '그들에게 – abasu