Pour tester un fichier spécifique:
dir /ar yourFile.ext >nul 2>nul && echo file is read only || echo file is NOT read only
Pour obtenir un liste des fichiers en lecture seule
dir /ar *
Pour obtenir une liste de lecture/écriture des fichiers
dir /a-r *
Pour lister tous les fichiers et indiquer si en lecture seule ou lecture/écriture:
for %%F in (*) do dir /ar "%%F" >nul 2>nul && echo Read Only: %%F|| echo Read/Write: %%F
EDIT
Patrick's answer échoue si le nom de fichier contient !
. Ceci peut être résolu en activant l'expansion retardée et hors dans la boucle, mais il y a une autre façon de sonder la valeur %%~aF
sans avoir recours à l'expansion retardée, voire une variable d'environnement:
for %%F in (*) do for /f "tokens=1,2 delims=a" %%A in ("%%~aF") do (
if "%%B" equ "" (
echo "%%F" is NOT read only
) else (
echo "%%F" is read only
)
)
Quel type de fichier batch? bash, DOS ...? –
Fichiers batch Windows, comme vous pouvez le voir en mentionnant% ~ a. – Joey