>> Delete Reply from No. 34904 article
No. RE: scripting...

등록 2001-11-14 17:57:00 By localhost     조회 2
이름 임대호    

		쉘에서 * 기호는 해당 디렉토리 전체 파일목록을 뜻합니다.
 말씀처럼 a* 라고 입력하면 먼저 a로 시작하는 파일이 있다면 각각 인자로
넘어가겠지만 그렇지 못해서 입력값 그대로(a*)가 첫번째 인자로 받아들여진
것이고,
 w*라고 입력한 경우는 해당 경로에 존재하는 w로 시작하는 파일들이 각각 첫
번째, 두번째, 세번째 인자로 전달되었기 때문에 그렇게 출력된 것입니다.
 파일목록과 관계 없이 * 기호를 사용해야 한다면 따옴표로 묶어서 전달해 줘
야겠죠.
 # ./test 'w*'
    : 안녕하세요. 숙제하는 도중에 잘 모르는게 있어서 이렇게...
: 혹시 아시는 분 계시면 알려주시면 감사드리겠습니다.
:
: ksh을 사용하는데 제가 만든 스크립트가 있는데
: 스크립트가 선택적으로 파일을 표시해야되거든요. ls a* 와 같이...
: 그런데 이상한점이...
: =======================
: #!/bin/ksh
:
: echo "argument 1 : $1"
: echo "argument 2 : $2"
: echo "argument 3 : $3"
: =======================
: 예를들어 위를보면 인수 첫번째, 두번째, 그리고 세번째를 인쇄하기로
: 되어있는 간단한 스크립트가 있는데...
:
: 아래에서 보이는것과 같이 a* 은 제대로 표시가 되는데 왜 w* 은 파일명
이
: 표시가 되는걸까요? 제 디렉토리에 a 로 시작하는 파일들은 없고 w 로 시
작
: 하는 파일은 3개가 있거든요. 그래서 그런것 같은데...
: 어떻게하면 w* 라는 글자가 정확하게 찍히게 할 수 있는지...
:
: /students/skwon01> ./test a*
: argument 1 : a*
: argument 2 :
: argument 3 :
: /students/skwon01> ./test w*
: argument 1 : wc
: argument 2 : www
: argument 3 : www.Z : /students/skwon01>           
:
: 아시는분의 답변을 기다리겠습니다.
: 읽어주셔서 감사합니다.
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved