¿Puedo ocultar archivos para que estén ocultos tanto en Windows como en Linux?

11

Tengo mi computadora configurada para usar la misma carpeta de inicio / perfil de usuario para Linux y Windows. Como consecuencia, tengo archivos como NTUSER.DATese ocultos en Windows que aparecen cuando yo lsy en mi administrador de archivos. ¿Hay alguna forma de hacer que Linux oculte los archivos ocultos?

0x539
fuente
Tiene una consecuencia secundaria: el uso de NTFS para su directorio de inicio de Linux romperá los permisos de Linux porque NTFS no los admite.
Thomas Ward

Respuestas:

19

Agregue los archivos que desea ocultar a un archivo denominado .hiddencon 1 archivo por línea dentro del directorio donde están esos archivos. Algo así ls {files} >.hiddenfuncionará para hacer esto rápidamente.

  • Puede ocultar archivos desde Windows con C:\>attrib +h D:\*.hidden /S(esto ocultará el .hiddenarchivo del método anterior). El directorio asumí D :.

  • Puede ocultar estos archivos lsen Linux agregando esto a su ~./bashrc:

    ls () {
      if [ -f .hidden ]; then
        declare GLOBIGNORE="$GLOBIGNORE:.*:$(tr '\n' ':' < .hidden)"
        ls "$@"
      fi
    }
    

    Esto ocultará los archivos cuando se use lsy lssolo. También supone que aún no tiene un alias ls. ls -ltodavía los mostrará, pero ese es solo otro alias.


El último comando que encontré en superusuario . Por favor vota esa respuesta;)

Rinzwind
fuente
3
Hmmm ... si entiendo bien, el OP está pensando en usar un sistema de archivos NTFS como directorio de inicio ... deberían leer su respuesta aquí: askubuntu.com/questions/330356/…
Rmano
¿Funcionará esto también para los administradores de archivos gráficos?
0x539
Para nautilus sí, solo se necesita la primera parte para eso. La tercera parte es para la línea de comando. Sin embargo, no estoy seguro de otros gerentes. El método .hidden podría ser la función Nautilus.
Rinzwind
attribsolo funcionará en sistemas de archivos NTFS / FAT.
Braiam
@Rinzwind Sin embargo, causa otros problemas: si intenta ejecutar, ls -l bashpasa la -lbandera a las export:(
0x539