Wpis z mikrobloga

Ma ktoś pomysł, jak przez polecenie przypisać do zmiennej określoną ilość znaków na prawo i w dół od danego miejsca?

Chodzi o taki sam efekt, jakbym zaznaczył tekst w terminalu ręcznie z wciśniętym CTRL, czyli równiutki prostokącik :P

#linux #bash
  • 7
  • Odpowiedz
@firencombomaster: Nie do końca rozumiem (czyt.: zupełnie nic) co chcesz osiągnać. Chodzi o zaznaczenie blokowe, od aktualnego miejsca kursora do określonej szerokości i wysokości takiego prostokąta?

Jeśli tak to zmartwię cię, bo nie sądzę, żeby to było możliwe (no może w jakimś konkretnym emulatorze terminala - ale nic mi o tym nie wiadomo). Lepiej powiedz po prostu dlaczego to potrzebujesz i może coś się wymyśli :)
  • Odpowiedz
@moriturius: Tak, właśnie tego potrzebuję. Mam sformatowany tekst, który z góry wiem, jakie będzie mieć wymiary i potrzebuję wyciąć dokładnie takie wymiary, np. od "kursora", czy też od danego znaku: 30 znaków w prawo i 5 znaków w dół.
  • Odpowiedz
@firencombomaster: Myślę, że źle się za to zabierasz :) A w jaki sposób ten tekst w terminalu się pojawia? :) Zapewne jest to wynik działania jakiejś komendy dlatego możesz użyć np. awk żeby wyciąć z tego to co cię interesuje i potem xclip skopiować do schowka. Czyli komenda wyglądałaby mniejwięcej tak:

costam | awk '{..instrukcje awka..}' | xclip -selection clipboard
  • Odpowiedz
@moriturius: Ja wiem, że zabieram się od drugiej strony, ale do jednego celu wiele dróg wiedzie ;)

xclip niepotrzebny, ten tekst może iść do zmiennej.

awkiem i sedem nie umiem się posługiwać xD Chodzi o to, że docelowy tekst miałby być wycięty ze strony internetowej (pobieram stronę przez w3m, bo curl domyślnie pobiera tagi HTMLa) i znajduje się w tabelce, w kilku wierszach następujących po sobie, dlatego łatwiej byłoby wyciąć to
  • Odpowiedz
@firencombomaster: Wydaje mi się, że to czego potrzebujesz to właśnie awk :) Proponuję ogarnąć chociaż podstawy (które są generalnie bardzo proste) bo to jest narzędzie, które warto znać jak się robi coś w terminalu.

Ewentualnie jeśli znasz VIMa to on przy uruchomieniu przyjmuje parametr

-s komendy
. W pliku komendy możesz wtedy zapisać sobie dowolne komendy jakie użyłbyś w VIMie co w zasadzie mogłoby się sprowadzić do wyszukania odpowiedniego miejsca w
  • Odpowiedz
@moriturius: Poduczyłem się podstaw awka i osiągnąłem zamierzony efekt. Chodziło o wybranie fragmentu tekstu ze strony internetowej i wyświetlenie go w conkym tak, by zajmował jak najmniej miejsca. Załączam screenshot z efektem (sekcja conky'ego: WOTD), fregment konfiguracji wraz z kodem i treść źródłową.

Kod:

WOTD ${hr}



${execi 600 w3m -dump -cols 200 http://www.ang.pl/wotd/today | cat -n | awk 'BEGIN{ print "* Word of the day:" } $1 ~ /50/ { for(i=2;i<=NF;i++)
f.....r - @moriturius: Poduczyłem się podstaw awka i osiągnąłem zamierzony efekt. Cho...

źródło: comment_ifU3JvhMHMOUS0665qMcdE62kVWMMQii.jpg

Pobierz
  • Odpowiedz