Pytania otagowane jako text-processing

Manipulowanie lub sprawdzanie tekstu za pomocą programów, skryptów itp.

2
Narzędzie w Uniksie do odejmowania plików tekstowych?
Mam duży plik złożony z pól tekstowych oddzielonych średnikami w postaci dużej tabeli. Zostało posortowane. Mam mniejszy plik złożony z tych samych pól tekstowych. W pewnym momencie ktoś połączył ten plik z innymi, a następnie zrobił coś w celu utworzenia dużego pliku opisanego powyżej. Chciałbym odjąć wiersze małego pliku od …


8
Zamień ciąg zawierający znak nowej linii w dużym pliku
Czy ktoś wie o nieliniowym narzędziu służącym do „binarnego” wyszukiwania / zastępowania ciągów w sposób zapewniający oszczędność pamięci? Zobacz też to pytanie . Mam plik tekstowy + 2 GB, który chciałbym przetworzyć podobnie do tego, co wygląda na to, że: sed -e 's/>\n/>/g' Oznacza to, że chcę usunąć wszystkie nowe …

4
porównaj dwie kolumny różnych plików i wydrukuj, jeśli pasuje
Używam Solaris 10, więc opcje grep obejmujące -f nie działają. Mam dwa pliki oddzielone potokami: plik1: abc|123|BNY|apple| cab|234|cyx|orange| def|kumar|pki|bird| plik 2: abc|123| kumar|pki| cab|234 Chciałbym porównać dwie pierwsze kolumny pliku 2 z plikiem 1 (przeszukaj całą zawartość pliku 1 w pierwszych dwóch kolumnach), jeśli pasują, wydrukuj dopasowaną linię pliku 1. …

2
Drukuj linie między (i włącznie) dwoma wzorami
Chcę zacząć grepowanie od linii, które mają CKna końcu linii, a przestać grepowanie, gdy linia ma Dna końcu. Próbowałem grep "$CK" "$D" file..txt, ale to nie zadziałało. Wejście: kkkkkkkkkkk jjjjjjjjjjjjjjjjjj gggggggggggg/CK JHGHHHHHHHH HJKHKKLKLLL JNBHBHJKJJLKKL JLKKKLLKJLKJ/D GGGGGGGGGGGGGG GGGGGGGGGGGGGG Pożądana moc wyjściowa: gggggggggggg/CK JHGHHHHHHHH HJKHKKLKLLL JNBHBHJKJJLKKL JLKKKLLKJLKJ/D




4
Przechowuj dane wyjściowe polecenia w buforze pierścieniowym
Mam długo działające polecenie, które generuje dużo danych wyjściowych na standardowym wyjściu. Chciałbym być w stanie zatrzymać na przykład tylko ostatnie trzy dni lub ostatni gibibajt (unikając wycinania linii na środku) i, jeśli to możliwe, w kawałkach plików nie większych niż 20 MiB. Każda porcja pliku jest nazywana sufiksem numerycznym …



5
Jak znaleźć i zamienić ciąg bez użycia polecenia Sed?
Jak wszyscy wiemy, sedjest wielce skuteczny, aby znaleźć i zastąpić ciąg, na przykład znaleziska „A” i zastąpienie go do „B” sed 's/a/b/g'. Czy można to zrobić za pomocą innego polecenia lub skryptu powłoki zamiast sed? Dotyczy to przyciętych systemów Linux dla telewizorów, które nie mają sedpolecenia. Więc muszę użyć innych …

3
głowa zjada dodatkowe postacie
Następujące polecenie powłoki miało wypisywać tylko nieparzyste linie strumienia wejściowego: echo -e "aaa\nbbb\nccc\nddd\n" | (while true; do head -n 1; head -n 1 >/dev/null; done) Ale zamiast po prostu drukuje pierwszą linię: aaa. To samo nie dzieje się, gdy jest używane z opcją -c( --bytes): echo 12345678901234567890 | (while true; …

5
Łączenie dużej liczby plików
Mam ± 10 000 plików ( res.1- res.10000), wszystkie składające się z jednej kolumny i równej liczby wierszy. To, czego chcę, jest w gruncie rzeczy proste; scal wszystkie pliki kolumnowo w nowy plik final.res. Próbowałem użyć: paste res.* Jednak (choć to wydaje się działać dla małego podzbioru plików wynikowych, to …

5
Jak przekonwertować znaczniki czasu w kolumnie na datę?
Mam plik zawierający to: 1415602803,LOGIN SUCCESS,AUTH,user2,192.168.203.63,10.146.124.73,59996,22 1415602807,LOGIN SUCCESS,AUTH,user1,172.24.31.10,172.32.1.1,48191,22 1415602811,LOGIN FAILED,AUTH,root,172.24.166.153,10.146.124.73,52506,22 1415602815,LOGIN FAILED,AUTH,user3,192.168.123.55,10.146.32.99,55750,22 Chcę przekonwertować znacznik czasu na datę w tym formacie: 2014-11-10 02:00:03,LOGIN SUCCESS,AUTH,user2,192.168.203.63,10.146.124.73,59996,22 2014-11-10 02:00:07,LOGIN SUCCESS,AUTH,user1,172.24.31.10,172.32.1.1,48191,22 2014-11-10 02:00:11,LOGIN FAILED,AUTH,root,172.24.166.153,10.146.124.73,52506,22 2014-11-10 02:00:15,LOGIN FAILED,AUTH,user3,192.168.123.55,10.146.32.99,55750,22 Jak mogę to zrobić? Wiem, że to działa: perl -pe 's/(\d+)/localtime($1)/e'(z tego pytania ), ale format wyjściowy …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.