¿Hay alguna manera de bloquear un archivo con herramientas integradas para que no se pueda eliminar o sobrescribir?
Para probar los scripts de copia, debo lock files temporarily
verificar el manejo de errores en los scripts. Hasta XP utilicé cargar un archivo en debug.exe para bloquearlo.
¿Hay alguna manera en Windows 7 (y posterior)?
Editar
Sé que hay programas haciendo esto. Mi pregunta es si hay un mecanismo incorporado en Windows. A veces tengo que verificar un script en una PC y no quiero instalar nuevos programas para eso.
Edit2
Aquí también hay buenas sugerencias: ¿Cómo bloquear a propósito exclusivamente un archivo? , que, sin embargo, necesitan herramientas de terceros o cambian el archivo a bloquear.
windows-7
filesystems
lock
meneo de pantano
fuente
fuente
Respuestas:
Creo que PowerShell es probablemente la mejor manera de lograr esto. Algo como lo siguiente:
Mientras está en pausa, la secuencia de comandos anterior provoca el siguiente mensaje al intentar abrir "myfile.txt":
fuente
File::Open
método que detalla los parámetros de la llamada (específicamente, el último argumento'None'
, rechaza compartir el archivo con cualquier otro subproceso / proceso, y del mismo modo, existen disposiciones para bloquear el archivo solo para lectura / escritura o una combinación de los mismos).$host.UI.RawUI.ReadKey(...)
que fallará en PowerShell ISE ya que ReadKey no está implementado para el ISE. La solución es[void](Read-Host 'Press Enter to continue')
. No es exactamente lo mismo que el usuario tiene que presionar Entrar en lugar de cualquier tecla. Sin embargo, lo suficientemente bueno para la mayoría de los propósitos. La solución provino de esta publicación de blog: jeffwouters.nl/index.php/2016/06/…Como no me gusta instalar software que realmente no usaré, encontré esta joya de un VBScript:
Todo el crédito va a Torgeir Bakken, puede ver la publicación completa aquí: http://www.pcreview.co.uk/threads/how-to-lock-files.1518829/
fuente
¿No puede marcarlo como de solo lectura? Esto efectivamente "bloqueará" el archivo al no permitir que sea cambiado o eliminado.
El comando attrib.exe está disponible en la línea de comando y le permitirá configurar un archivo o directorio para que sea de solo lectura. Puede encontrar más información sobre ese comando aquí
Por el contrario, puede hacer lo mismo a través de la GUI haciendo clic con el botón derecho en el archivo o directorio en el que desea marcar solo lectura, seleccionando propiedades y marcando el cuadro Solo lectura. Al hacer clic en Aplicar / Aceptar, se aplica la nueva configuración al archivo o directorio.
fuente
¿No sería posible limitar la accesibilidad al archivo con la pestaña Seguridad al hacer clic con el botón derecho e ir a Propiedades para el archivo o la carpeta?
Si el usuario tiene acceso de administrador a la PC, ¿esto no le permitiría eliminar la capacidad de todos los demás para hacer algo con el archivo / carpeta?
A medida que escribo, debo admitir que mi PC de trabajo todavía está en WinXP Pro, por lo que lo que dije anteriormente puede que ya no esté disponible: todavía no estoy tan cómodo con mi nueva caja de Win 8.1 Pro en casa como con el años de trabajo con Win XP
fuente
En algunos escenarios, crear una nueva carpeta con el nombre del archivo puede hacer el trabajo. (Es decir, aparece un error al intentar abrir el archivo).
fuente