Az érdekesség kedvéért itt az igazi kódrészlet is (sorszámokkal):
4913 LDFLAGS="$LDFLAGS `
4914 input_flags="$apr_ldflags"
4915 output_flags=""
4916 filtered_dirs="/usr/local/lib64"
4917 for flag in $input_flags; do
4918 filter="no"
4919 for dir in $filtered_dirs; do
4920 if test "$flag" = "-L$dir" || test "$flag" = "-L$dir/"; then
4921 filter="yes"
4922 break
4923 fi
4924 done
4925 if test "$filter" = "no"; then
4926 output_flags="$output_flags $flag"
4927 fi
4928 done
4929 if test -n "$output_flags"; then
4930 printf "%s" "${output_flags# }"
4931 fi
4932 `"
A hibaüzenet:
./configure[4926]: : cannot execute
./configure[4926]: syntax error at line 4926 : `then' unmatched
- NevemTeve blogja
- A hozzászóláshoz be kell jelentkezni
Hozzászólások
Az echo-nál az a kérdés, hogy mit akarsz csinálni - mert ha azt mondodt, hogy a macskakörmön belül van a backtick és azon *belül* a másik macskaköröm, akkor szerintem a *belső* macskaköröm elé kéne egy rep-jel.
Hogy a script miért ha el, azt még csak nem is értem. (Azt meg pláne nem, hogy miért test || test áll és nem egy db test a -a operátorral.)
=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
- A hozzászóláshoz be kell jelentkezni
És a legrosszabb az, hogy nem is svn-t akartam eredetileg, hanem cmake-t, csak függősége nekije az svn. https://tvtropes.org/pmwiki/pmwiki.php/Main/NotMakingThisUpDisclaimer
- A hozzászóláshoz be kell jelentkezni
Most gyorsan megnéztem, ha a belső idézőjeleket takarom, akkor se kapom ezt az agyhalott hibát:
$ echo "`Unused_variable=\" $random_variable\"`"
$ echo "`Unused_variable=" $random_variable"`"
ksh: : cannot execute [Ez egy könyvtár]
$
Annyival jobb a helyzet, hogy a sokkal rövidebb, és olvashatóbb formával is látszik, hogy mi a gond:
$ "`"
ksh: : cannot execute [Ez egy könyvtár]
ksh: : cannot execute [Ez egy könyvtár]
$
Igen, két hibaüzi is van. És ha ezt írod, akkor lassan meg is lesz a dolog:
$ "` `"
ksh: : cannot execute [Ez egy könyvtár]
$
Szóval annyi, hogy a Korn-shell előre veszi a nyitó zárójel párjának megtalálását, és csak utána kezdi el a `-et értelmezni. A backtickek között meg elvárja, hogy valami értelmes parancs legyen.
Fenti két furcsa parancs bash-ban:
$ "`"
> `
> "
bash: command substitution: sor: 1: váratlan EOF „"” helyett
bash: command substitution: sor: 2: szintaktikai hiba: váratlan fájlvége
: a parancs nem található
$ "` `"
: a parancs nem található
$
Azaz a bash már a nyitó idézőjel után fontosnak érzi a backtick feldolgozását - függetlenül attól, hogy vége van-e már a "sztringnek".
=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
- A hozzászóláshoz be kell jelentkezni
Köszönöm szépen, érdekesek ezek az eredmények, talán majd írok is valami bugregport félét subversion-éknek, hogy legyenek szívesek a $(cmd) formát használni, egyelőre lett egy 'export CONFIG_SHELL=/usr/local/bin/bash'; most éppen fordul.
Persze a cmake ott segít, ahol tud, esetünkben saját fordításában is részt vesz, és mivel nem tud a '-X64' című bűvős opcióról, ezért nem is fordul.
- A hozzászóláshoz be kell jelentkezni
Mennyia _POSIX_ARG_MAX értéke a rendszerben?
Tippemre az a gond, hogy a ksh számára a backtikek között egyszerűen túl sok karakter van, és nincs akkora puffere.
- A hozzászóláshoz be kell jelentkezni
Csináltam egy leegyszerűsített példát, a blogbejegyzés elején látható; a githubról leszedett új ksh-val is kijön a gond.
- A hozzászóláshoz be kell jelentkezni