Cum se instalează dos2unix pe Linux fără acces root?
On februarie 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
Am descărcat dos2unix-7.3.3-win32.zip și l-am dezarhivat. În dosarul bin din fișierul dezarhivat, am dos2unix.exe
Cum se instalează dos2unix în Linux?
Nu pot face yum install dos2unix
deoarece nu sunt & nu pot obține acces root.
Răspunde
Alte răspunsuri arată cum să descărcați și să compilați dos2unix
, dar dacă pur și simplu căutați să convertiți fișiere din terminații de linie în stil DOS (CR-LF) în terminații de linie în stil Unix, există mai multe alte abordări care nu ar trebui să implice instalarea a nimic:
-
dacă aveți
tr
:tr -d "\r" < input > output
-
dacă aveți Perl:
perl -pi -e "s/\r\n/\n/g" input
(care convertește fișierul în loc , la fel ca
dos2unix
) -
dacă aveți
sed
:sed -i "s/^M$//" input
unde apăsați Ctrl V apoi Ctrl M pentru a obține
^M
.
Comentarii
- +1. Am multe fișiere în directorul meu. Execut
find . -type f -exec dos2unix {} \;
În exemplul dvs. pentrutr
șised
, cum pot realiza pentru multe fișiere? - Nu aș folosi ' versiunea
tr
în acest caz, dar cused
,find . -type f -exec sed -i 's/^M$//' {} \;
ar trebui să funcționeze. Mai bine,find . -type f -print 0 | xargs -0 sed -i 's/^M$//'
, care va procesa cât mai multe fișiere de fiecare dată când ruleazăsed
. - Și dacă ' nu trebuie să procesați fișiere în subdirectoare,
sed -i 's/^M$//' *
ar funcționa la fel de bine. - În opinia mea fișier Am 2 înregistrări. Ambele înregistrări conțin caracter
^M
. Când rulezsed -i 's/^M$//' input > output
, fișierul meuoutput
conține 0 înregistrări. Cred căsed
elimină înregistrarea care conține^M
. În schimb, vreau să se păstreze înregistrarea, dar elimin doar^M
. - Tocmai am aflat că
sed -i 's/\r//' *
funcționează. Anunță-mă dacă există o modalitate mai bună.
Răspunde
În primul rând, ai descărcat un dosar executabil pentru Windows (dos2unix-7.3.3- win32 .zip), ceea ce nu este ceea ce doriți pentru că utilizați Linux.
Încercați să descărcați codul sursă pentru dos2unix pentru Linux și extrageți-l în casa dvs. dir:
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
dacă totul merge bine, vei putea găsi un fișier dos2unix undeva în directorul $ HOME / bin . puteți utiliza această nouă instalare tastând
$ ~/bin/dos2unix windows_formatted_file.txt
Răspuns
Trebuie să descărcați codul sursă și compilați-l.
Aici este codul sursă.
Pentru a-l dezarhivați executați: ( VERSIUNE este egal cu versiunea pe care ați descărcat-o)
tar xvf dos2unix-VERSION.tar.gz
Executarea finală:
make
Dacă compilarea a reușit, va apărea un executabil numit dos2unix și unix2dos.
Răspunde
Descarcă dos2unix-7.3.3.tar .gz.
tar xvzf dos2unix-7.3.3.tar.gz cd dos2unix-7.3.3 make install prefix=$HOME
Aceasta va instala dos2unix în $ HOME / bin /.
Pentru informații suplimentare, consultați INSTALL.txt.
Răspuns
Trebuie să descărcați RPM-ul specific de pe site-ul OS. De exemplu, pentru CentOS, descărcați fișierul RPM din http://vault.centos.org/
Lasă un răspuns