Zadani prikladu na prvnim terminu UNIXu (3.5.2000)

Naprogramujte tar

Naprogramujte program tar, ktery umi "zabalit" dane soubory do jednoho. Syntaxe programu by mela byt nasledujici:

tar [t|x|c]f <soubor> [soubory ...]

kde jednotlive parametry znamenaji nasledujici:
t ...... vypise obsah (tedy jmena souboru a adresaru) "zapakovanych" v souboru.
x ...... "rozbali" soubor do aktualniho adresare
c ...... "zapakuje" dalsi uvedene soubory a adresare (cely jejich podstrom) do souboru
parametr f je z historickych duvodu povinny
program by mel po rozbaleni zachovat u souboru i adresaru skupinu a vlastnika, cas posledni modifikace (nikoliv u linku) a linky (soft, hard pouze v ramci jednoho adresare).
Uzitecny je take prikaz uuencode, ktery na vstup prichozi soubor predela na vystup ve formatu

begin
....
...
....
end
kde ..... jsou pismena velke abecedy a nejake znaky (v tomto pripade se tedy nebude komprimovat, ale zvetsovat),
a prikaz uudecode, ktery udela pravy opak prikazu uuencode.
Je mozne take vymyslet jiny zpusob.


Jesti jste to nepochopili, tak by vysledny soubor mel vypadat nejak takto:

<informace o souboru>    (napr. jako vypis ls : -rw-r--r-- user group date+time name (popr. link) )
begin
....
.....
...
...
end
<informace o dalsim souboru>
begin
...
...
...
...
atd.

Jestli chcete nekdo vedet, jak by to melo asi vypadat, tak mi Emilnete nebo mi napiste zpravu viz hl. nabidka.
A nejake priklady: obluda.cz a Beran