Nowe posty

Autor Wątek: Problem ze skryptem  (Przeczytany 3059 razy)

Mylek89

  • Gość
Problem ze skryptem
« dnia: 2010-01-26, 16:56:18 »
Witam
Pisze swój pierwszy skrypt w linuxie,jego zadaniem jest:

Napisać skrypt, przyjmujący dwa parametry: logname (nazwa użytkownika) i liczbę dni. Zadaniem skryptu jest wyświetlenie posortowanej alfabetycznie listy nazw tych plików z katalogu domowego użytkownika logname, które były ostatnio modyfikowane ponad podaną ilość dni temu.


Chce poprac ktory dzis jest dzien po przez komende ls: date | awk '{print $3}'
jak przypisac wynik tej komendy pod zmienna?

arctgx

  • Gość
Problem ze skryptem
« Odpowiedź #1 dnia: 2010-01-26, 17:41:54 »
Wynik polecenia możesz przekazać do zmiennej tak:

zmienna=$(polecenie)
# lub równoważnie:
zmienna=`polecenie`
Takie rzeczy znajdziesz w man bash (klepnij sobie to polecenie).

Klepnij też man date. Zobaczysz, że nie musisz wyniku tego polecenia przepuścić przez awk, tylko sformatować sobie na gotowo tak jak chcesz.

Do samego zadania: man find.

P.S. Aktualniejszy jest man -LC find (po angielsku, ale opisuje opcje, których podczas puszczenia polskiego tłumaczenia nie było).

Mylek89

  • Gość
Problem ze skryptem
« Odpowiedź #2 dnia: 2010-01-26, 21:23:50 »
dzieki arctgx

Siedze nad tym skryptem cały dzień i nie mogę wpaść na pomysł w jaki sposób mogę wypisać te pliki które były modyfikowane w określonym czasie .
Może ktoś z was robił coś w tym stylu i wie jak podejść do tego typu problemu?:]

Puki co mam cos takiego:(

\\#! /bin/bash
echo "Podaj nazwe uzytkownika: "
read user
echo "Podaj liczbe dni: "
read dni
aktualny_dzien=$(data | awk  '{print $3}')
roznica_dni=$[ $aktualny_dzien - $dni ]
ls -l /home/$user | awk '{print $7}'> plik