1
我有一個腳本,列出目錄中的所有文件,按字母順序列出它們,並將文件編號放在文件名之前。調用變量來運行腳本
#!/bin/bash
x=1
cd ~/bin
for f in *
do
if [ -f $f ]; then
echo "$x: $f"
declare a$x=$f
x=$(expr $x + 1)
fi
done
read -p "What would you like to execute?: " num
$num
輸出將
1: file0
2: file1
3: file2
等
運行$ NUM將執行命令
a1
這不是命令。我想要做的是運行$ a1等於(即file0)。我怎樣才能做到這一點?
謝謝Janito!這工作,除了我需要修改它,如: 'eval \ $ a $(echo $ num)' – Guvery
沒問題,並感謝您的觀察!你能考慮接受答案嗎? =) –