Programowanie w systemie UNIX/sed

Z Wikibooks, biblioteki wolnych podręczników.
Przejdź do nawigacji Przejdź do wyszukiwania

Sed[1]

Podręczniki[edytuj]

  • fragment z książki Novell SuSE[2]

Konwersja liczby[edytuj]

 a=1.2e5
 echo "$a" | sed 's/e/*10^/g;s/ /*/' | bc

Lepiej jest dodać nawiasy wokół liczby postaci a*b^n z uwagi na kolejność operatorów:

#!/bin/bash

# chmod +x test.sh
# ./test.sh

r="1e-09" 
echo "r  =  "$r
r10=`echo "("${r}")" | sed -e 's/[eE]+*/\\*10\\^/'` # convert e to *10^
echo "r10 = "$r10

b=$(echo 1/$r10 | bc -l)
echo " b = "$b

Wynik:

 ./test.sh
r  =  1e-09
r = (1*10^-09)
1/r = 1000000000.00000000000000000000

Źródła[edytuj]

  1. Sed (program) w wikipedii
  2. Opis sed z książki Novell SuSE