Avatar billede ostehamster Nybegynder
27. juli 2003 - 22:37 Der er 9 kommentarer og
1 løsning

Konverter en masse filers tegnsæt

Hejsa

Jeg er for nylig skiftet fra windows til linux, og har nu proplemer med alle mine php filer.

Der er skrevet i UTF-8 men de skal være i ISO8859-1

Jeg har, fra arne_v, fået afvide at de kan konverteres med "iconv --from-code UTF-8 --to-code ISO8859-1 glfilnavn --output nyfilnavn"

Hvordan laver jeg et shellscript, der konvertere alle php filer i en mappe, og alle undermapper?

mvh
Christoffer
Avatar billede lap Nybegynder
27. juli 2003 - 22:48 #1
Hvis ellers iconv-metoden er korrekt:

# cd <til kataloget hvor filerne ligger>
# find . -name "*.php" -print | while read fil
do
  cp $fil $fil.org
  iconv --from-code UTF-8 --to-code ISO8859-1 $fil --output /tmp/$$
  cp /tmp/$$ $fil
  rm -f /tmp/$$
done

--
Det var det - det er helt uden garanti, og husk at have en kopi inden du går i gang.
Avatar billede ostehamster Nybegynder
27. juli 2003 - 22:56 #2
Hej igen :)

Kanon, hvad er det der skal stå i toppen af filen, noget med bash eller noget
Avatar billede lap Nybegynder
27. juli 2003 - 22:57 #3
#!/bin/bash

Så bliver det bash som afvikler - og husk at chmod 755 <scriptnavn>
Avatar billede lap Nybegynder
27. juli 2003 - 23:00 #4
#!/bin/bash
cd <til kataloget hvor filerne ligger>
find . -name "*.php" -print | while read fil
do
  cp $fil $fil.org
  iconv --from-code UTF-8 --to-code ISO8859-1 $fil --output /tmp/$$
  cp /tmp/$$ $fil
  rm -f /tmp/$$
done
Avatar billede ostehamster Nybegynder
27. juli 2003 - 23:12 #5
den prøver jeg, der er bare lige en fejl i den der konverteringsting, som jeg skal kigge lidt på
Avatar billede lap Nybegynder
27. juli 2003 - 23:15 #6
Kan problemet ikke løses ved at du uploader filerne igen - med ftp ascii?
eller kommandoen "dos2unix fil.php -c iso fil.php"?
Avatar billede ostehamster Nybegynder
27. juli 2003 - 23:17 #7
altså ved at lave en ftp server på min linux, og så uploade dem via ftp fra min windows?

sidst overførte jeg via Samba, kan det være fejlen?
Avatar billede lap Nybegynder
27. juli 2003 - 23:19 #8
Ja, det er meget tænkeligt - det giver en overførsel som er binær - og derfor bliver <cf><lf> f.eks. heller ikke konverteret.

Det er den dårligst tænkelige måde at overføre på (med mindre filerne skal være binære - f.eks. programmer, zipfiler eller lignende).
Avatar billede ostehamster Nybegynder
27. juli 2003 - 23:35 #9
tror lige jeg smækker en ftp server op imorgen så

takker
Avatar billede lap Nybegynder
27. juli 2003 - 23:36 #10
velbekomme :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester