Hallo iedereen,

Ik zal mijn probleem op dit forum ook maar even posten.

Ik zit hier nou al twee dagen mee te worstelen en ik kom er maar niet uit. Hopelijk kan een van jullie me helpen. Ik heb PHP met de pecl module ingestelt om RAR bestanden uit te pakken (complete gameservers). Maar in het RAR archief zit ook een .sh bestand. Alleen dit schijnt door RAR te worden "aangepast", in de vorm van het toevoegen van een /r achter elke regel.

Dit leid tot errors in het .sh bestand omdat de commando's dan niet meer kloppen. Heeft iemand enig idee hoe ik dat kan oplossen?

Bij voorbaat dank!
Ricardo
De extensie geeft aan dat het een shellscript is en daar zou \n en \r geen probleem moeten geven. In jouw post heb je het over /r en dat is wat anders.
Pardon, het betreft inderdaad \r. Ik krijg in het shellscript na uploaden de volgende error:


./start.sh
: Bestand of map bestaat niet
./start.sh: line 3: ./trackmaniaserver: Bestand of map bestaat niet
sleep: ongeldig tijdinterval '1\r'
Probeer `sleep --help' voor meer informatie.
: Bestand of map bestaat nieto
: command not found


Uit de regel sleep: ongeldig tijdinterval '1\r' maak ik op dat er een \r achter de regel komt, want de normale regel daar is "sleep 1". Ook alle mappen worden niet gevonden, waarschijnlijk doordat er \r achteraan komt vermoed ik.

Het oorspronkelijke bestand is :

cd tmn
#crs=%scl%=
./trackmaniaserver /internet /deicated_cfg=dedicated_cfg.txt /game_settings=MatchSettings/Nations/NationsRed.txt /nologs
#cre
sleep 1
cd xaseco
php aseco.php TMN </dev/null >aseco.log 2>&1 &
echo $!

Als ik het .sh bestand open met "WinSCP", niets verander en weer opsla doet hij het wel weer normaal. Maar dat is natuurlijk niet de bedoeling.

Edit: Ik zie nu dat als ik het open met VI in linux dat er op elke regel ^m staat en geen \r...

Edit2 : Ik heb het nu zelfs met .tar en .tar.gz bestanden geprobeerd zonder resultaat. Dan maar gewoon zonder in te pakken downloaden...

Reageren