Você quer dizer a concatenação de dois comandos usando o operador &&
?
Eq. fileacl h:\folder1 /O Administrator:F && fileacl h:\folder1 /G Administrator:F
Isso está em um ambiente Windows. Eu tenho um problema em um volume NAS onde o administrador perdeu todo o acesso a várias pastas e arquivos. Eu posso encontrar as pastas e arquivos ofensivos e tenho usado arquivos em lote para conceder a propriedade à conta de administrador e, em seguida, conceder o acesso, mas tenho um problema com pastas aninhadas. Então, se nós temos -
"h: \ pasta1 \ pasta2 \ pasta3 \ pasta4", em que a pasta EACH não está acessível nem é de propriedade do Administrador
Eu listo as pastas em um arquivo txt e, em seguida, edito para executar os comandos para conceder a propriedade em um arquivo de lote -
fileacl h: \ folder1 / O Administrador: F
fileacl h: \ folder1 \ folder2 / O Administrador: F
fileacl h: \ folder1 \ folder2 \ folder3 / O Administrador: F
fileacl h: \ pasta1 \ pasta2 \ pasta3 \ pasta4 / O Administrador: F
edite para criar o seguinte para conceder acesso -
fileacl h: \ folder1 / G Administrador: F
fileacl h: \ folder1 \ folder2 / G Administrador: F
fileacl h: \ pasta1 \ pasta2 \ pasta3 / G Administrador: F
fileacl h: \ pasta1 \ pasta2 \ pasta3 \ pasta4 / G Administrador: F
O problema é que somente a pasta1 será corrigida, pois não terei acesso ATÉ que o segundo comando seja concluído para tocar na pasta2. O mesmo para 3 & 4.
A minha pergunta é - é possível executar dois comandos por linha da listagem do arquivo de texto criado para que ele execute os dois comandos para a pasta1 antes de ir para a pasta 2 e assim por diante? Copiando manualmente um & organizar tudo isso levaria uma eternidade, pois tenho vários milhares de pastas aninhadas. Um loop FOR no prompt DOS / CMD?
Thx!
Você quer dizer a concatenação de dois comandos usando o operador &&
?
Eq. fileacl h:\folder1 /O Administrator:F && fileacl h:\folder1 /G Administrator:F
Tente usar
icacls h:\ /grant Administrator:(CI)(OI)F
Os itens acima devem conceder acesso total de administrador a todos os arquivos e pastas em H: \ e todos os subdiretórios. E também definirá "Objeto Inherit" e "Container Inherit", portanto, a permissão deve percorrer todas as pastas abaixo dela.
Antes de fazê-lo, execute-o sem o / t (atravessar todos os subdiretórios) e talvez apenas para uma pasta específica.
por exemplo.
icacls h:\folder1 /grant Administrator:F
Isso deve dar ao Administrador de Acesso Completo somente a 'pasta1', mas não permite que a permissão seja herdada em pastas abaixo deles.
Espero que isso ajude
Tags command-line permissions