주어진 인수에 대해 ls -l 명령을 사용하는 bash 스크립트를 어떻게 만들 수 있습니까? 내 shebang 요법이 포함된 텍스트 문서가 있는데... ls -l 명령을 추가하면 내 cwd에서만 작동합니다. 내 스크립트가 scr이라고 가정해 보겠습니다. ./scr을 실행하면 인수 입력이 허용되지 않고 cwd에서 ls -l만 실행됩니다. ls -l 명령에 디렉터리를 인수로 제공할 수 있어야 합니다.
답변1
스크립트를 넣으면 ls -l "$@"
bash 스크립트에 제공된 모든 인수가 명령에 제공됩니다 ls -l
.
#!/bin/bash
ls -l "$@"
사용:
Chris@Chris-PC:~/test$ ./scr.sh
total 4
-rwxrwxr-x+ 1 Me None 21 Feb 15 22:02 scr.sh
Chris@Chris-PC:~/test$ ./scr.sh /
total 489
drwxr-xr-x+ 1 Chris None 0 Feb 7 17:09 bin
drwxr-xr-x+ 1 Chris None 0 Oct 1 2014 dev
drwxr-xr-x+ 1 Chris None 0 Feb 7 17:09 etc
drwxrwxrwt+ 1 Chris None 0 Apr 13 2015 home
drwxr-xr-x+ 1 Chris None 0 Feb 7 17:09 lib
dr-xr-xr-x 10 Chris None 0 Feb 15 22:03 proc
drwxr-xr-x+ 1 Chris None 0 Apr 7 2015 sbin
drwxrwxrwt+ 1 Chris None 0 Feb 15 22:02 tmp
drwxr-xr-x+ 1 Chris None 0 Dec 27 14:16 usr
drwxr-xr-x+ 1 Chris None 0 Dec 3 2014 var
Chris@Chris-PC:~/test$