Nowe posty

Autor Wątek: skrytp: usuwajacy wolne linie  (Przeczytany 11938 razy)

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 2
    • Zobacz profil
skrytp: usuwajacy wolne linie
« dnia: 2007-05-29, 21:17:43 »
witam potrzebuje skryptu który bedzie:

usuwal wolne linie w pliku PODANYM jako parametr...

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1186
    • Zobacz profil
skrytp: usuwajacy wolne linie
« Odpowiedź #1 dnia: 2007-05-30, 02:05:21 »
Możesz wykorzystać `awk` ze sprawdzaniem $0!=""

Więcej: `man awk` i google :)

Offline MiCu MiCu

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 262
    • Zobacz profil
skrytp: usuwajacy wolne linie
« Odpowiedź #2 dnia: 2007-05-30, 12:02:14 »
Cześć,

Tu nie trzeba skryptu :-) , wystarczy (e)grep, np.

egrep -v "^[[:blank:]]*$" PLIK

Pozdrawiam
Micu

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 2
    • Zobacz profil
skrytp: usuwajacy wolne linie
« Odpowiedź #3 dnia: 2007-05-30, 18:27:31 »
2007-05-30 12:02:14 micu napisał:

> Cześć,
 >
 > Tu nie trzeba skryptu :-) , wystarczy (e)grep, np.
 >
 > egrep -v "^[[:blank:]]*$" PLIK
 >
 > Pozdrawiam
 > Micu
 >



tylko ze ta operacja Mosi byc wykonana wlasnie przez skrypt....
a nie pojedynczo komende....
     
    prosba dalej aktualna.....

Offline Paweł Smoliński

  • Administrator
  • Guru
  • *****
  • Wiadomości: 593
    • Zobacz profil
skrytp: usuwajacy wolne linie
« Odpowiedź #4 dnia: 2007-05-30, 21:45:11 »
>
 > tylko ze ta operacja Mosi byc wykonana wlasnie przez skrypt....
 > a nie pojedynczo komende....
 >      
 >     prosba dalej aktualna.....

skrypt.sh:
#!/bin/sh
egrep -v "^[[:blank:]]*$" $1 > $2

no i wykonujesz: skrypt.sh plik_wejsciowy plik_wyjsciowy

[Xavery] Uprasza się o nie podawanie gotowych rozwiązań na talerzu, zwłaszcza w sytuacji w której pytający miał przedstawiony sposób rozwiązania zadania (zapewne szkolnego) :)
Gutta cavat lapidem non vi, sed saepe cadendo / sic homo doctus fit non vi sed saepe studendo

Offline Pawel Pik

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 5
    • Zobacz profil
    • Mój serwis ogólnotematyczny
Odp: skrytp: usuwajacy wolne linie
« Odpowiedź #5 dnia: 2015-08-10, 10:51:24 »
Komenda tr posiada przełącznik -s, który pozwala usunąć powtarzające się znaki. Linia pusta oznacza, że znak nowej linii występuje dwa razy z rzędu. Polecam zapoznać się z manualem!

Offline LionNet

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 19
    • Zobacz profil
    • LionNet
Odp: skrytp: usuwajacy wolne linie
« Odpowiedź #6 dnia: 2015-12-20, 11:16:54 »
sed'em też się da to zrobić:

sed '/^$/d' test > test2

a jeśli mają być usunięte linie z samymi pustymi znakami to:

sed '/^\s*$/d' test > test2