Hogy lehet backslasht escapelni shellben?
a következő hibát dobja: . /2. sh: command substitution: sor: 9: váratlan EOF „"” helyett . /2. sh: command substitution: sor: 10: szintaktikai hiba: váratlan fájlvége 1. -első sorban van a legnagyobb: 2. -második sorban van a legnagyobb: 3. -harmadik sorban van a legnagyobb: 4. -negyedik sorban van a legnagyobb: 1. -első oszlopban van a legnagyobb: 2. -második oszlopban van a legnagyobb: 3. -harmadik oszlopban van a legnagyobb: 4. -negyedik oszlopban van a legnagyobb:
#!/bin/bash
# melyik sorban és oszlopban van a legnagyobb érték
echo "
2\3\1\2
1\5\3\4
4\7\2\3
2\5\3\6">matrix.dat
index=0;
for ertek in `cat matrix.dat | tr "\" " "`;do
[ $index -eq 0 ] && smax1=$ertek; [ $index -eq 1 -o $index -eq 2 -o $index -eq 3 ] && [ $ertek -gt $smax1 ] && smax1=$ertek
[ $index -eq 4 ] && smax2=$ertek; [ $index -eq 5 -o $index -eq 6 -o $index -eq 7 ] && [ $ertek -gt $smax2 ] && smax2=$ertek
[ $index -eq 8 ] && smax3=$ertek; [ $index -eq 9 -o $index -eq 10 -o $index -eq 11 ] && [ $ertek -gt $smax3 ] && smax3=$ertek
[ $index -eq 12 ] && smax4=$ertek; [ $index -eq 13 -o $index -eq 14 -o $index -eq 15 ] && [ $ertek -gt $smax4 ] && smax4=$ertek
[ $index -eq 0 ] && omax1=$ertek; [ $index -eq 4 -o $index -eq 8 -o $index -eq 12 ] && [ $ertek -gt $omax1 ] && omax1=$ertek
[ $index -eq 1 ] && omax2=$ertek; [ $index -eq 5 -o $index -eq 9 -o $index -eq 13 ] && [ $ertek -gt $omax2 ] && omax2=$ertek
[ $index -eq 2 ] && omax3=$ertek; [ $index -eq 6 -o $index -eq 10 -o $index -eq 14 ] && [ $ertek -gt $omax3 ] && omax3=$ertek
[ $index -eq 3 ] && omax4=$ertek; [ $index -eq 7 -o $index -eq 11 -o $index -eq 15 ] && [ $ertek -gt $omax4 ] && omax4=$ertek
let index++
done
[ $smax1 -gt $smax2 ] && [ $smax1 -gt $smax3 ] && [ $smax1 -gt $smax4 ] && echo "1. -első sorban van a
legnagyobb: $smax1"
[ $smax2 -gt $smax1 ] && [ $smax2 -gt $smax3 ] && [ $smax2 -gt $smax4 ] && echo "2. -második sorban
van a legnagyobb: $smax2"
[ $smax3 -gt $smax1 ] && [ $smax3 -gt $smax2 ] && [ $smax3 -gt $smax4 ] && echo "3. -harmadik sorban
van a legnagyobb: $smax3"
[ $smax4 -gt $smax1 ] && [ $smax4 -gt $smax2 ] && [ $smax4 -gt $smax3 ] && echo "4. -negyedik sorban
van a legnagyobb: $smax4"
[ $omax1 -gt $omax2 ] && [ $omax1 -gt $omax3 ] && [ $omax1 -gt $omax4 ] && echo "1. -első oszlopban van a
legnagyobb: $omax1"
[ $omax2 -gt $omax1 ] && [ $omax2 -gt $omax3 ] && [ $omax2 -gt $omax4 ] && echo "2. -második oszlopban
van a legnagyobb: $omax2"
[ $omax3 -gt $omax1 ] && [ $omax3 -gt $omax2 ] && [ $omax3 -gt $omax4 ] && echo "3. -harmadik oszlopban
van a legnagyobb: $omax3"
[ $omax4 -gt $omax1 ] && [ $omax4 -gt $omax2 ] && [ $omax4 -gt $omax3 ] && echo "4. -negyedik oszlopban
van a legnagyobb: $omax4"
Úgy ahogy bármi mást is escape-elsz: eléraksz egy backslasht.
2\\3\\1\\2
További kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!