Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
rozek1app2
Tvůrce
Avatar
rozek1app2:5.1.2015 12:46

Zdravím,

momentálně mám jako úkol napsat skript v cmd a vlastně je téměř kompletní. Mám ovšem problém s jednou řádkou, která by fungovat dle mého názoru měla, ale nefunguje. Skript bych popsal jakožto hlídací skript, který hlídá nejrůznější parametry skriptem vytvořeného textového souboru. Jedním z parametrů je hlídání zda-li je soubor pouze pro čtení nebo ne. Za předpokladu, že uživatel změní ve vlastnostech parametr na "pouze pro čtení" se do skriptu má zapisovat informace o změne. Tato jediná část mi ve skriptu nefunguje. Věděl by někdo jak na to? Předem díky za všechny odpovědi.

Problémová řádka: dir /ar textfile.txt >nul 2>nul && echo file is read only>> textfile.txt || echo file is NOT read only

Celý skript:

@echo off
title file-checking script
echo. 2>textfile.txt
set file="textfile.txt"
set maxbytesize=3000

:loop

if exist textfile.txt echo existuje>> textfile.txt

dir /b /ah textfile.txt >nul 2>nul && (
echo zmena na skryty datum: %DATE% cas: %TIME%>> textfile.txt
) || (
echo soubor neni skryty
)

dir /ar textfile.txt >nul 2>nul && echo file is read only>> textfile.txt || echo file is NOT read only

if not exist textfile.txt type NUL > textfile.txt

FOR /F "usebackq" %%A IN ('%file%') DO set size=%%~zA
if %size% LSS %maxbytesize% (
echo.soubor je pod %maxbytesize% bajtu
) ELSE (
del textfile.txt
)

timeout/t 2
goto loop

 
Odpovědět
5.1.2015 12:46
Avatar
Martin
Člen
Avatar
Odpovídá na rozek1app2
Martin:6.1.2015 9:08

ano chyba je zde "echo file is read only>> textfile.txt" zapisuješ do něj když je read only!

Nahoru Odpovědět
6.1.2015 9:08
Je jedno co děláš, ale záleží jak dobře to umíš prodat.
Avatar
rozek1app2
Tvůrce
Avatar
Odpovídá na Martin
rozek1app2:6.1.2015 11:07

Zdravím,

děkuji za odpověď. Chtěl jsem příspěvek smazat, protože mi tato věc došla cca 20 minut poté co jsem otázku položil.

 
Nahoru Odpovědět
6.1.2015 11:07
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.