Ben bir pdf dönüştürmek için bir Bash komut dosyası kullanan bir PHP programı var. Dosya adında boşluk içeriyorsa Ancak doğru bash script geçirilir değil.
Nasıl bir bash komut dosyası içinde boşluk içeren dosya adlarını kaçış? Eğer "OUTFILE" değişken dosya teklif için özel bir şey yapmak zorunda mı?
Bash script:
#!/bin/bash
INFILE=$1
OUTFILE=${INFILE%.*}
gs \
-q \
-dSAFER \
-dBATCH \
-dNOPAUSE \
-sDEVICE=png256 \
-r150x150 \
-sOutputFile=${OUTFILE}.png \
${INFILE}
PHP script:
echo "converting: ".$spool.$file . "\n";
system("/home/user/bin/pdf2png.sh " . escapeshellarg($spool . $file));
Edit: I escapeshellarg () Bir değişkeni tırnak kaldırıldı. Ancak bu sorunu çözmek değildi. Ben Bash script OUTFILE değişken olduğunu düşünüyorum.