Makul bir sed nerede?


11

Yosemite üzerinde. Sed eskidir: \törneğin anlamıyor . Yükledim coreutilsve sedaynı ile ilişkili bulamıyorum .

Burada benim seçeneklerim neler?


4
Stok OS X sed -Eseçeneğini ile çalıştırırsanız, kabul etmelidir \t. Ayrıntılar için re_formatkılavuz sayfasına bakınız.
nwellnhof

Bu should ama öyle değil. Mavericks üzerindeki echo -e 'foo\tbar' | sed -E 's/\t/blah/'verim foo bar10.9.5.
Will

Yanıtlar:


11

gnu-sedSadece coreutils'i yüklemeniz gerekir :

brew install gnu-sed

Ardından, aşağıdaki satırları eklemeniz gerekir .bash_profile:

export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"
export MANPATH="/usr/local/opt/gnu-sed/libexec/gnuman:$MANPATH"

O zaman sedsürümünüz en son sürüm olmalıdır:

$ sed --version
sed (GNU sed) 4.2.2
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jay Fenlason, Tom Lord, Ken Pizzini,
and Paolo Bonzini.
GNU sed home page: <http://www.gnu.org/software/sed/>.
General help using GNU software: <http://www.gnu.org/gethelp/>.
E-mail bug reports to: <bug-sed@gnu.org>.
Be sure to include the word ``sed'' somewhere in the ``Subject:'' field.

1
PATHİfadelere ihtiyacınız yok . Sadece brew install gnu-sedve şu şekilde mevcut olacakgsed
neu242

1
PATHİfadeleri komutunu kullanmanızı sağlar sedyerine gsed. Bu gerekli değildir, ama mektubu eklemek için hatırlamak gerek kalmayacaktır gsizin için sedkomuta.
jherran

2
Elbette. Ancak bu sedBSD sed olmasını bekleyen programlara müdahale edebilir . Bunun bir sorun olup olmadığını bilmiyorum, ama olmasını beklerdim. (osx sonra bsdisms varsa)
neu242

alias sed=gsedbir profilde, belki?
Kroltan

9

Sorunuz etiketlendiği homebrew, ancak MacPorts kullananlar okuyucular için: Run sudo port install gsedGNU almak için (mevcuttur sed gsedbenzer etmek, komuta gfindiçinde findutilsport).


5

Fink'i takın . Henüz almadıysanız, XCode'a da ihtiyacınız olacak.

Sonra böyle en son sed (ve diğer birçok yararlı şeyi) yükleyin:

fink install sed


thx, ben fink farkında değildi
javadba

2
Fink oldukça yaşlanıyor. Bunun yerine Homebrew tavsiye ederim .
neu242

2
@ neu242 "Eski" nasıl bir problemdir? Unix 45 yaşında ve hala kullanıyoruz. Fink'in kendisi 6 yıl, sorunların çözülmesi için yeterince uzun. Fink (ve MacPorts) paketleri düzenli olarak güncellenir.
paul

@paul Oh, son 10 yıldır Fink kullanan hiç kimseyle karşılaşmadım. Hala kullanılabilir olduğunu duymak güzel! :)
neu242
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.