Hvordan installere dos2unix på Linux uten root-tilgang?
On februar 12, 2021 by admin $uname -a
Linux vm-** 2.6.32-573.8.1.el6.x86_64 #1 SMP Fri Sep 25 19:24:22 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux
Jeg lastet ned dos2unix-7.3.3-win32.zip og pakket den ut. Under bin-mappen fra den utpakkede filen fikk jeg dos2unix.exe
Hvordan installerer jeg dos2unix i Linux?
Jeg kan ikke gjøre yum install dos2unix
da jeg ikke er & kan ikke få root-tilgang.
Svar
Andre svar viser hvordan du laster ned og kompilerer dos2unix
, men hvis du bare ønsker å konvertere filer fra DOS-stil linjeendelser (CR-LF) til linjeendelser i Unix-stil, det er flere andre tilnærminger som ikke bør innebære å installere noe:
-
hvis du har
tr
:tr -d "\r" < input > output
-
hvis du har Perl:
perl -pi -e "s/\r\n/\n/g" input
(som konverterer filen på plass , samme som
dos2unix
) -
hvis du har
sed
:sed -i "s/^M$//" input
der du trykker Ctrl V og deretter Ctrl M for å få
^M
.
Kommentarer
- +1. Jeg har mange filer i katalogen min. Jeg kjører
find . -type f -exec dos2unix {} \;
I eksempelet ditt fortr
ogsed
, hvordan kan jeg oppnå for mange filer? - Jeg vil ikke ' t bruke
tr
-versjonen i så fall, men medsed
,find . -type f -exec sed -i 's/^M$//' {} \;
skal fungere. Enda bedre,find . -type f -print 0 | xargs -0 sed -i 's/^M$//'
, som vil behandle så mange filer som mulig hver gang den kjørersed
. - Og hvis du trenger ikke ' å behandle filer i underkataloger,
sed -i 's/^M$//' *
vil fungere like bra. - I mitt innlegg fil Jeg har to poster. Begge postene inneholder
^M
tegn. Når jeg kjørersed -i 's/^M$//' input > output
, inneholderoutput
-filen min 0 poster. Jeg trorsed
fjerner posten som inneholder^M
. I stedet vil jeg at posten skal beholdes, men bare fjerne^M
. - Jeg fant akkurat ut at
sed -i 's/\r//' *
fungerer. Gi meg beskjed hvis det er en bedre måte.
Svar
Først og fremst lastet du ned en kjørbar dos2unix for windows (dos2unix-7.3.3- win32 .zip), som ikke er det du ønsker fordi du bruker Linux.
Prøv å laste ned kildekoden for dos2unix for Linux og trekk den ut til hjemmet ditt:
mkdir $HOME/bin/ tar -zxvf dos2unix-7.3.3-src.tar.gz # the exact name of the downloaded file may vary cd dos2unix-7.3.3 ./configure --prefix=$HOME/bin/ make make install
hvis alt går bra, vil du kunne finne en dos2unix-fil et sted i $ HOME / bin -katalogen. du kan bruke denne nye installasjonen ved å skrive
$ ~/bin/dos2unix windows_formatted_file.txt
Svar
Du må last ned kildekoden og kompiler den.
Her er kildekoden.
For å utheve den utfører: ( VERSJON tilsvarer den versjonen du har lastet ned)
tar xvf dos2unix-VERSION.tar.gz
Endelig utfør:
make
Hvis kompileringen lyktes, vil den vises som en kjørbar kalt dos2unix og unix2dos.
Svar
Last ned dos2unix-7.3.3.tar .gz.
tar xvzf dos2unix-7.3.3.tar.gz cd dos2unix-7.3.3 make install prefix=$HOME
Dette installerer dos2unix i $ HOME / bin /.
For mer informasjon, se INSTALL.txt.
Svar
Du må laste ned spesifikk RPM fra OS-nettstedet. For eksempel, for CentOS, last ned RPM-filen fra http://vault.centos.org/
Legg igjen en kommentar