Z powodzeniem użyłem następującego sed
polecenia do wyszukiwania / zamiany tekstu w systemie Linux:
sed -i 's/old_link/new_link/g' *
Jednak gdy wypróbuję to w systemie Mac OS X, otrzymuję:
„polecenie c oczekuje \ po którym następuje tekst”
Myślałem, że mój Mac działa z normalną powłoką BASH. Co tam?
EDYTOWAĆ:
Według @High Performance wynika to z tego, że Mac sed
ma inny smak (BSD), więc moje pytanie brzmi: w jaki sposób mam replikować to polecenie w BSD sed
?
EDYTOWAĆ:
Oto faktyczny przykład, który powoduje:
sed -i 's/hello/gbye/g' *
sed
widzi „c” w danych jako polecenie. Czy używasz zmiennej? Proszę zamieścić coś, co bardziej odzwierciedla rzeczywiste polecenie i niektóre przetwarzane dane. W ten sposób można uzyskać prostą demonstrację tego błęduecho x | sed c
.