Estoy usando Windows 7 en alemán y, aunque estoy bien con eso (de lo contrario, instalaría una versión en inglés), realmente no me gustan los nombres de carpetas localizados; me gustaría ver el nombre real de la carpeta.
Por supuesto, podría simplemente eliminarlos LocalizedResourceName
de todos desktop.ini
, pero me pregunto si hay alguna configuración de registro que simplemente haga que Windows ignore los nombres localizados.
Respuesta1
- Como solución alternativa, tenga en cuenta que si hace clic en la barra de direcciones, la ruta completa no traducida se muestra allí.
- Para deshacerse de
LocalizedResourceName
automáticamente, instale unbash
(por ejemplo, desdegit) y ejecute
for desktopini in $(find /c/Users -name desktop.ini); do sed -i "/^LocalizedResourceName/d" $desktopini; done
Si desea simplemente comentar la entrada para su posterior reversión, utilice
"s/^\(LocalizedResourceName\)/;\1/"
en lugar de
"/^LocalizedResourceName/d"
.
Por supuesto, puede modificar la ruta/c/Users
a cualquier ruta que desee, solo recuerde que msys/mingw usa barras diagonales y no dos puntos después de la letra de la unidad. - Podría ser una forma similar de usar powershell, pero nunca me molesté en aprenderlo ya que uso bash de todos modos...esta publicación SOpodría ser un buen comienzo para el
sed
papel. O simplemente revisasesta respuestade una pregunta básicamente duplicada - Finalmente, tenga en cuenta que
desktop.ini
se ignora por completo si una carpeta no tiene configurado el atributo de sistema o de solo lectura.
Respuesta2
Aquí tienes una alternativaPotencia Shellenfoque para comentar elNombre de recurso localizadodeclaración enescritorio.iniarchivos:
$LRN = 'LocalizedResourceName'
gci desktop.ini -Hidden -Recurse -ea silent | ForEach{
$Content = Get-Content $_ -raw
If ( $Content -match $LRN ) {
$Content -replace $LRN, ";$LRN" | Set-Content $_ -force
}
}
Para crear un script de deshacer, simplemente intercambie los -replace
parámetros:
$Content -replace ";$LRN", $LRN
Respuesta3
Para cualquiera que prefiera la forma powershell, este script funcionó para mí:
$desktopinis = gci -Recurse -Hidden . | where { $_.Name -eq "desktop.ini" }
foreach ($ini in $desktopinis) {
$content = $ini | get-content
foreach ($line in $content) {
if ($line -cmatch "^LocalizedResourceName=") {
$newname = $line.substring(22) # propertyname plus one for the equals sign
$before = $ini.Directory.FullName
$after = $ini.Directory.Parent.FullName + "\" + $newname
Write-Host ("Renaming '" + $before + "' to '" + $after + "'.")
Move-Item -Path $before -Destination $after
Remove-Item -Path ($after + "\desktop.ini") -Force
}
}
}
Busca archivos ini del escritorio de forma recursiva en la carpeta actual y cambia el nombre de los directorios que los contienen y donde contienen un LocalizedResourceName al nombre mostrado, luego elimina el archivo ini del escritorio.
El resultado debería ser suficiente para revertir lo que se hizo si algo sale mal.
Sin garantía.