我寫了一個bash腳本。它基於輸入參數獲取三條路徑,然後獲取路徑中的圖像名稱/文件名。在bash腳本中找不到命令錯誤
喜歡的東西:
我提供:
AA=/home/user
然後,它使用find命令來獲得
/home/user/dir2/images/dir/tellmeimage1fun.bin
最後我有獲取tellmeimage1fun.bin作爲輸出。
腳本:
#!/bin/bash
echo "arg0 n/k/d"
AA=$1
CC=$3
PATH1="`find $AA/dir2/images/dir/ -name *image1*.bin`"
PATH2="`find $AA/dir2/images/dir/ -name *bimage2*.bin`"
PATH3="`find $AA/dir2/images/dir/ -name *cimage3*.bin`"
if [ $CC = "n" ] ; then
PATH=$PATH1
elif [ $CC = "k" ] ; then
PATH=$PATH2
else
PATH=$PATH3
fi
#Getting filename name from path:
IMG="`ls $PATH | cut -d "/" -f6`"
OUTPUT:
/users/prasapat/bin/sl5: line 22: ls: command not found
/users/prasapat/bin/sl5: line 22: cut: command not found
如果我給LS完整路徑和削減他們的工作。但我不想爲腳本中的所有命令執行此操作。如果我刪除最後一行並回顯PATH變量,那就完全沒問題。只有在添加最後的命令後,我纔看到這個問題。
請幫助,讓我知道我是否做過任何明顯的錯誤。
非常感謝!這樣一個愚蠢的錯誤! – Pkp 2011-04-12 23:55:54