Toon posts:

bash: no such file or directory

Pagina: 1
Acties:

Verwijderd

Topicstarter
Nadat ik een bash script had gevonden heb ik deze met billyboy's OS opgeslagen.

ff chmod eroverheen en het zou moeten werken.

Niet dus. :P een nieuwe regel wordt aangegeven met hexadecimaal 0D 0A (twee bytes dus). Decimaal is dat, uhm..... 10 13 -> chr(10)+chr(13).

Bash wil echter alleen maar chr(13) zien en geen chr(10). (Tenminste dat vermoeden heb ik).

Toen heb ik maar ff gezocht op internet waar vele het advies krijgen dat ze chmod 777 oid moeten doen, maar die denk ik hetzelfde probleem hebben als ik.

Iemand die dit probleem kan bevestigen?

Anyway: Ik zoek dus een oplossing hiervoor.

  • QuarK
  • Registratie: Maart 2000
  • Laatst online: 09-07 21:48
Wat bedoel je nou eigenlijk?

chmod +x ./bashscript
./bashscript

:?

  • tools
  • Registratie: Maart 2001
  • Laatst online: 29-07 07:42

tools

Het is altijd motorweer.

Simpel! :)
Gebeurd mij ook zo vaak, je script staat negen van de tien keer in Dos formaat en moet naar unix. :9

meeste distro's hebben een dos2unix optie, haal die erover heen, check de she-bang bovenaan. (cq de #!/usr/bin)
En het moet draaien als een tierelier.

Verwijderd

Topicstarter
QuarK:
Nee dat chmod heb ik wel goed gedaan. Het probleem is het script zelf. Het bestand dus.

In dat bestand moeten nieuwe regels aangegeven worden door byte nummer 13 (dat is enter). Echter windows plakt daar byte nummer 10 voor !! Die moet er dus uit.

Elke regel in het bash-bestand eindigd dus op chr(10), en dat is niet de bedoeling, want bash snapt dat niet. chr(10) is niet zichtbaar met MC (F4).

met VI zie je ze wel (net geprobeerd). Het laaste teken op elke regel is: ^M

De eerste regel van het bestand ziet er dus zo uit met vi:
#!/bin/sh^M
Die moeten er dus allemaal uit. Maar ik heb geen zin om dat met de hand te doen. Wat ik wil is dus zoiets:

open bestand.sh for binary input as #1
open bestand2.sh for binary output as #2
for i=1 to len(bestand.sh)
input#1, byte
if byte<>10 then print#2, byte
next i

(lang geleden dat ik basic gebruikte)

Verwijderd

Topicstarter
Op zaterdag 17 maart 2001 22:43 schreef tools het volgende:
Simpel! :)
Gebeurd mij ook zo vaak, je script staat negen van de tien keer in Dos formaat en moet naar unix. :9

meeste distro's hebben een dos2unix optie, haal die erover heen, check de she-bang bovenaan. (cq de #!/usr/bin)
En het moet draaien als een tierelier.
she-bang cq de #!/usr/bin :?
in /usr/bin zie ik hier geen dos2unix file staan. (debian 2.2r2)

ok :)
dkpg -i sysutils
apt-get install libc5 :)
ls -l
dos2unix bashfile
ls -l
(hoppa, weer een paar bytes meer schrijfruimte)
./bashfile

8-)

Bedankt.

  • jeroen|IA
  • Registratie: Juni 1999
  • Laatst online: 26-05-2025
Je had ook gewoon even in vi ':%s/<ctrl-v><ctrl-m>//g' kunnen doen.
Pagina: 1