Como posso criar um script bash que use o comando ls -l em um determinado argumento?

Como posso criar um script bash que use o comando ls -l em um determinado argumento?

Como posso criar um script bash que use o comando ls -l em um determinado argumento? Eu tenho um documento de texto contendo meu shebang ect... mas quando adiciono o comando ls -l, ele só funciona no meu cwd. Digamos que meu script seja scr, quando eu executo ./scr ele não me permitirá inserir um argumento e simplesmente executa ls -l no meu cwd. Preciso ser capaz de fornecer ao comando ls -l um diretório como argumento.

Responder1

Se você inserir ls -l "$@"seu script, ele fornecerá quaisquer argumentos dados ao script bash para o ls -lcomando:

#!/bin/bash
ls -l "$@"

Usar:

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$

informação relacionada