Lehetséges ezt megoldani (Linux)?
Egy olyan programot kell írnom, ami átkopírozza a megadott file tartalmát a másik megadott file-ba. Közben opciókat lehet használni, és én elakadtam az egyik opció megírásánal. Ez az opció a "creat" lenne, amit -c-vel adunk meg, és így létrehozza azt a file-t, amibe fogjuk belemásolni az előzőleg megadott file-t. A trükkje az, hogy paraméterként még a permissiont is meg kell adni az újonnan létrehozott file-nak. Sajnos nem lehet úgy megoldani, hogy utána változtatok a permissionokon.
Így kellene kinéznie a program futtatásának:
./copy -c 0774 a b
Létrehozza a "b" file-t, amibe átmásolta az "a" tartalmát, majd ls -l b futtatása után ennek a végeredménynek kellene lennie:
-rwxrwxr-- ... b
Hogyan oldható meg? Lehetséges így megoldani? Az umask()-t kell használni vagy valami mást?
Minden választ előre köszönök!
Lehetséges.
Nem tudom fejből, kb 1 perc guglizás kell hozzá.
Sikerült megoldanom. Hasznos dolog ez a gugli. :D Csak még egy kérdés, ha úgy kell megadnom a permissions-t, hogy rwxrwx--x, akkor azt hogy tudom atalikatni mode_t-be?
Az előbbi számosnál úgy csináltam, hogy
create_mode = strtol(tmp_optarh, NULL, 8);
Itt mit használjak?
rwx rwx r--
111 111 100
Csak nézd meg, hogy valóban a harmadik hármas van-e a legkisebb helyiértéken.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!