Możesz rozwiązać problem za pomocą vima, skąd możesz łatwo uzyskać dostęp za pomocą MinGW-w64 (jeśli zainstalowałeś Gita to przychodzi) lub Cygwin.
Więc kluczem jest użycie:
- Opcja
-s
, który będzie wykonywał skrypt vim z poleceń Vima.
- Opcja
-b
, który będzie otworzyć plik w trybie binarnym, gdzie można zobaczyć te niewygodne BOM bajty
- Opcja
-n
, co jest bardzo ważne! Ta opcja odmawia użycia plików wymiany, więc cała twoja praca działa w pamięci. Daje to pewność, ponieważ jeśli plik jest duży, pliki wymiany mogą wprowadzać w błąd proces.
To powiedziawszy, przejdźmy do kodu!
Najpierw trzeba stworzyć prosty plik o nazwie „script”, która będzie trzymać poleceń vim
echo 'gg"+gPggdtCZZ' > script
... ten dziwny ciąg mówi vim "Przejdź do początku plik, skopiuj pierwsze słowo i wklej go za kursorem, aby usunąć wszystko aż znak „C”, a następnie zapisz plik "
Uwaga: Jeśli plik zaczyna się od innego znaku niż«C», to mieć aby to określić. Jeśli masz różne "pierwsze znaki", możesz postępować zgodnie z logiką i utworzyć skrypt bash, który odczyta pierwszą postać i zastąpi ją w powyższym fragmencie.
Uruchom komendę vim:
vim -n -b <the_file> -s script
Nie mam pojęcia dlaczego, ale to działa na mnie. Dzięki! –
Jeśli chcesz używać Vima, to polecenie jest znacznie prostsze: 'vim" + set nobomb "" + wq "'. W ten sposób nie musisz znać pierwszej widocznej postaci pliku. –
Czy możesz rozwinąć pliki wymiany, które powodują problemy z twoim skryptem? Czy nie powinien być przezroczysty? –