첫 번째 방법은 우리가 의도한 대로 동작한다. 패턴이 파일 경로 전체와 일치하기 때문이다. 디렉터리명 mammal이 패턴 mammals/*.txt에 포함돼 두 파일 모두 일치한다.
$ echo mammals/*.txt
mammals/lizard.txt mammals/snake.txt
첫 번째 방법은 우리가 다음 명령을 입력한 것과 같은 효과가 있다.
$ mv mammals/lizard.txt mammals/snake.txt reptiles
두 번째 방법에는 변수가 쓰였다. 변수는 문자열 리터럴 값 그대로 평가될 뿐, 파일 경로에 대한 특별한 처리는 되지 않는다.
$ echo mammals/$FILES
mammals/lizard.txt snake.txt
따라서 두 번째 방법은 우리가 다음 명령을 입력한 것과 동등하다.
$ echo mammals/lizard.txt snake.txt reptiles
두 번째 방법의 명령이 유효하려면 snake.txt 파일이 현재 작업 디렉터리에 있어야 한다. 하지만 이 파일은 mammals 디렉터리에 있으니 오류가 발생한다.
$ mv mammals/$FILES reptiles
/bin/mv: cannot stat 'snake.txt': No such file or directory