Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam! wie ktoś może jak w miarę szybko porównać nazwy plików w bashu ( starszy młodszy )
gdy nazwy plików to np
plik1.20110419122259
plik1.20110419122308
- jak widać po kropce to data z godziną.
chciałem generalnie zrobić coś takiego - mam dwa pliki młodszy starszy
które wyświetlam sobie za pomocą:
ls | grep plik1@
i zrobić taki skrypcik:
rm starszy touch plik1@`date +%Y%m%d%H%M%S` cat młodszy >> starszy
Ostatnio edytowany przez debbie (2011-04-19 12:47:47)
Offline
Użyj programu diff.
Offline
Tylko że tak ogółem to chodzi mi o porównywanie dwóch ciągów!
Podałem przykład z plikami ale w sumie to chodzi o wyświetlanie nazw partycji ZFS'a:
wyświetlam to za pomocą:
zfs list -t snapshot -H -o name | grep rpool/local@
rpool/katalog@20110419122259
rpool/katalog@20110419122308
a cała reszta to tak jak pisałem wyżej ( oczywiście do usuwania i przesyłania będę używać komend z ZFS'a )
Ale generalnie myślałem że prościej będzie jak podam przykład z plikami.
tak myślę że powyższe polecenie wyrzuca mi te dwie nazwy.
Na początek to musiał bym je wrzucić do zmiennej lub to co po małpie ( tylko jak? )
Był bym wdzięczny za podpowiedż!
Ostatnio edytowany przez debbie (2011-04-19 13:22:58)
Offline
man bash, sekcja CONDITIONAL EXPRESSIONS.
Offline
Możesz też przy użyciu AWK wyciągnąć numerek. Tylko odpowiednio sobie poprzypisywać.
piotr3ks@piaskownica ~ $ echo "plik1.20110419122259" | awk -F"." '{ print $2 }' 20110419122259
Ostatnio edytowany przez Piotr3ks (2011-04-19 14:21:03)
Offline