Supposons que vous travaillez sur un serveur unix très ancien où dos2unix
, perl
, tr
et sed
ne sont pas présents. Comment pouvez-vous convertir des fichiers de dos au format Unix ?
command-line
software-rec
Hemant
la source
la source
tr
etsed
?sed
est vieux ........ iirc,ex
oued
serait disponible sur un système comme celui-là? Je ne l'appellerais pas unix s'il n'y a pas detr
oused
.sed
? Vraiment!? Par intérêt, quel est le système? Comme le soulignent Gilles et MattBianco, il en aurait probablement encoreed
au moins.Réponses:
Je pense que vous faites référence à la suppression du caret-M à la fin des lignes. Vous pouvez utiliser la recherche et le remplacement dans vi pour ce faire.
Dans vi, je fais normalement: (où "^" représente CTRL):
Qui s'affiche à l'écran comme:
la source
sed
etvi
sont tous deux spécifiés par POSIX , et cettevi
commande n'utilise aucune extension Vim.^V
et '^ M' signifie?Un serveur sans
tr
oused
devrait être vraiment ancien, ou il manque des commandes de base. J'espère queed
c'est là; il existait dans la première édition d'Unix .où
^V^M
signifie taper Ctrl+ Vpuis Ctrl+ M(pour saisir un saut de ligne littéral). Si vous savez que toutes les lignes se terminent par CR LF, vous pouvez utiliser à la1,$s/.$//
place (supprimer sans discrimination le dernier caractère de chaque ligne).la source