我試圖通過在另一個腳本中運行它來測試我的腳本。我搜索了一些解決方案並實現了它們(順便說一句 - 這兩個腳本都在一個目錄中),但我不斷收到以下錯誤。Bash,一個目錄,從腳本運行腳本,非常錯誤
./tr_znaki.sh: 13: ./tr_znaki.sh: Syntax error: "(" unexpected
這是我的代碼。
#!/bin/bash
echo "this script is about to run another script"
a=ab
b=AB
echo "$a"
echo "$b"
sh ./tr_znaki.sh "$a" "$b"
任何想法?
znaki_tr.sh
first_two="$1 $2" #zapisuje dwia pierwsze znaki do wspolnej zmiennej
a="$1";b="$2" #rozdziela znaki
split1=$(echo $a | fold -w 1) #rozdziela a na litery i wypisuje
split2=$(echo $b | fold -w 1) #rozdziela a na litery i wypisuje
arr1=($split1) #zapisanie stringu do tablicy
arr2=($split2) #zapisanie stringu do tablicy
shift #usuwa pierwszy argument
shift #usuwa drugi argument
size1=${#arr1[@]} #zapisanie rozmiaru arr1 do zmiennej
size2=${#arr2[@]} #zapisanie rozmiaru arr2 do zmiennej
# nieskończona pętla pozwalająca na ciągłe wpisywanie tekstu do translacji, przerywana standardowo ctrl + c
while true
do
read tekst #zmienna, do której wpisywany jest przez użytkownika tekst
mod=$tekst #zapisanie wpisanego tekstu do zmiennej
for ((i=0; i<${size1}; i++));
do
mod=${mod//[${arr1[i]}]/${arr2[i]}} #nowa zmienna z zamianą którejś z wartości w arr na odpowiadającą wartość w arr2
done
echo $mod #wypisanie zmienionego tekstu
#sleep 1 #czeka sekundę
done
OK運行它,那麼,是什麼tr_znaki.sh樣子? –
'。/ tr_znaki.sh'的第13行是什麼? –