我希望能夠顯示我的命令列表文件的內容,但每當我做它只是打印出「./commands.txt」,但如果我嘗試在我的腳本以外的相同的東西它工作得很好。爲什麼貓不能在我的bash腳本中工作?
這是我的代碼:
helpFile="./commands.txt"
if [ "$com" = "help" ]
then
cat $helpFile
fi
我希望能夠顯示我的命令列表文件的內容,但每當我做它只是打印出「./commands.txt」,但如果我嘗試在我的腳本以外的相同的東西它工作得很好。爲什麼貓不能在我的bash腳本中工作?
這是我的代碼:
helpFile="./commands.txt"
if [ "$com" = "help" ]
then
cat $helpFile
fi
我沒有看到你從$com
變量,但如果你把它根據第一個參數這應該工作:
#!/bin/bash
helpFile="./commands.txt"
com=$1
if [ "$com" = "help" ]
then
cat $helpFile
fi
在上面的示例中,$com
將設置爲傳遞給腳本的第一個參數,因此如果您想顯示./commands.txt
的內容,則可以將其稱爲./<script.sh> help
我還以爲你應該檢查,以便該文件確實在當前工作目錄中存在或可能嘗試使用絕對路徑即:
helpFile="/home/commands.txt"
我發現了什麼是錯誤的。我的文本編輯器搞砸了,並將所有新編輯的內容保存在桌面上,而不是包含腳本和文本文件的文件夾。無論如何,感謝所有的幫助傢伙,我真的很感激它:)
您應該刪除問題。這個問題不可能在未來幫助其他人。 – chepner
這真的是唯一的問題嗎?我仍然不明白你從哪裏得到'$ com'變量? – Cyclonecode
$ COM是一個變量,我用它來確定用戶輸入了什麼命令。你在我的帖子上看到的只是一個命令。 順便說一句,它沒有工作:/ – NanoCoder
你是說,而不是'commands.txt'的內容,你只看到文字輸出'./ commands.txt'並沒有像「沒有這樣的文件或目錄?「 –
我使用read-command來設置$ com。 – NanoCoder