如何製作一個對給定參數使用 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$