我需要創建一個腳本,它允許傳遞命令行參數並檢查它是否存在於運行腳本的目錄中的目錄中。如果它列出內容以及是否不打印錯誤消息。 所以在命令行我應該鍵入./check.sh測試(現有目錄) 和腳本應該運行。現在我不明白如何使用應該是$ 1的測試。在腳本中,我想花1美元,並根據現有目錄進行檢查。但是如果我這樣做:我學習bash,與命令行參數混淆
#!/bin/bash
DIR=$1
cd DIR
ls
這是行不通的,因爲DIR不會在參數取(在這種情況下測試) 我知道我需要使用if-else塊,但我不明白如何獲得我需要的信息。請有人幫我解決這個問題。
您忘了'$'試試'cd $ DIR' –
您需要使用$ DIR,您可以使用'test(1)'實際測試目錄是否存在。就目前來看,如果DIR不存在,你的'ls'將在當前目錄中運行。你也可以將它縮短爲'cd $ DIR && ls'。 –
其實你不必cd到$ DIR。你可以簡單地做'ls $ DIR' –