Portál AbcLinuxu, 14. srpna 2025 08:56


Dotaz: nahrazeni win radku

3.5.2005 08:02 pepa
nahrazeni win radku
Přečteno: 89×
Odpovědět | Admin
cau potreboval bych nahradit konce radku skriptu psanych ve win (takove to "^M") za normalni konce radku treba pomoci sedu.. zkousel sem
sed 's/^M/\n/g'
ale nefunguje to..
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

3.5.2005 08:14 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: nahrazeni win radku
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nemáš to psát pod blbým OS :-)

Jinak man dos2unix :-)
3.5.2005 08:19 pepa
Rozbalit Rozbalit vše Re: nahrazeni win radku
no to sem nepsal ja.. jo dik za tip ale melo by to jit aji pomoci sedu ne?
3.5.2005 08:22 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: nahrazeni win radku
Mělo by to být \r
3.5.2005 08:29 pepa
Rozbalit Rozbalit vše Re: nahrazeni win radku
diky moc tohle funguje:)
3.5.2005 08:37 0
Rozbalit Rozbalit vše Re: nahrazeni win radku
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pouzivam tuhle bashovou funkci (vetsina je jen silena konstrukce na osetreni vsemoznych argumentu, nicmene stejne se da vymyslet situace, kdy se to obflafne, podstatna cast je vyznacena):
function fromdos ()
{

if [ "$1" ]; then

   case "$1" in

     -help|-h|--help* ) 
              echo usage: fromdos file
        ;;
     * ) 
              cat -v $1 | sed 's/\^M//' # tohle je skutecne podstatne
         ;;
   esac
else
   echo usage: fromdos file
fi
}
3.5.2005 08:45 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: nahrazeni win radku
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud ten skript na Linuxu i edituješ, tak brutální řešení (zatím se mi osvědčilo) je

:au BufReadPost * if !&binary && &modifiable | set ff=unix endofline | endif

Jinak ještě jednodušší než sed je

tr -d \\r

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.