Re: commandline dpkg-reconfigure locales - uden prompt...

Daniel Sørensen <[email protected]>
Newsgroups gmane.linux.debian.user.danish
Message-ID <[email protected]>
On Friday 05 August 2005 00:35, Daniel Sørensen wrote:
> On Thursday 04 August 2005 23:26, Frederik Juul Christiani wrote:
> > * Daniel Sørensen <[email protected]> [Aug 04. 2005 23:04]:
> > > On Thursday 04 August 2005 22:51, Daniel Sørensen wrote:
> > > > Hvordan får jeg, via. en kommando, sat locales til da_DK? -
> > > > uden at få en prompt
> > >
> > > En lille workaround der søger for at da_DK er den eneste i listen:
> > >
> > > echo "da_DK ISO-8859-1" > /etc/locale.gen
> > >
> > > Nu mangler jeg bare at få dpkg-reconfigure locales til at
> > > fortsætte, istedet for at vente på at man trykker 2x enter :)
> >
> > Kan du ikke nøjes med locale-gen i stedet for dpkg-reconfigure
> > locales?
>
> /etc/environment bliver ikke opdateret af locale-gen!
>
> Dette løser det:
>
>  echo "da_DK ISO-8859-1" > /etc/locale.gen
>  echo "#da_DK.UTF-8 UTF-8" >> /etc/locale.gen
>
>  locale-gen
>
>  EE="/etc/environment"
>  SELECTED="da_DK ISO-8859-1"
>
>          :> $EE.tmp # HVAD GØR DENNE KOMMANDO????
>
>      if [ -n "$SELECTED" ] && [ "$SELECTED" != "None" ]; then
>          #   Add a newline in case last line does not have one
>          echo >> $EE.tmp
>          echo "LANG=$SELECTED" >> $EE.tmp
>          #   Consecutive blank lines are replaced by a single line
>          cat -s $EE.tmp > $EE
>      fi
>      rm -f $EE.tmp

Her kommer det hele:

 EE="/etc/environment"
 SELECTED="da_DK ISO-8859-1"

    # Sætter LANG environment variabel
     if [ -e $EE ]; then
          sed -e '/^ *LANG=/d' $EE > $EE.tmp || true
         #  $EE has to be updated if $SELECTED is empty or 'None'
         cp -f $EE.tmp $EE
     else
         :> $EE.tmp
     fi
     if [ -n "$SELECTED" ] && [ "$SELECTED" != "None" ]; then
         echo >> $EE.tmp
         echo "LANG=$SELECTED" >> $EE.tmp
         #   Consecutive blank lines are replaced by a single line
         cat -s $EE.tmp > $EE
     fi
     rm -f $EE.tmp


FORKLARINGER:

if [ -e $EE ]; then

 Hvad betyder "-e" ???

if [ -n "$SELECTED" ] && [ "$SELECTED" != "None" ]; then
         
 Hvad betyder "-s" ???

Hvad betyder den første linje i /etc/environment ???

>
> > Prøv evt. at kigge i /var/lib/dpkg/info/locales.postinst for at
> > se hvad dpkg-reconfigure locales udfører.
> >
> > mvh Frederik
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.