Eliminar permanentemente archivos en Mac OS

21

Hace un tiempo, como usuario relativamente nuevo de Mac OS X, me sorprendió saber que no puede eliminar archivos fácilmente . Directamente, es decir, sin moverlos primero a la basura. Obviamente, en Windows y Linux, esto se puede hacer con facilidad, pero no así en Mac.

Me di cuenta de esto cuando intenté borrar archivos de una memoria USB: quitar los archivos ("mover a la papelera") no libera espacio; eso sucede solo después de vaciar toda la Papelera de todo el sistema. ¡No es particularmente conveniente! (Parece estúpido tener que vaciar toda la papelera solo para dejar espacio en la memoria USB. Puede haber gigabytes de cosas allí, y este tipo de derrota su propósito, ¿qué pasaría si realmente necesitara restaurar algo de la memoria USB? basura algún día.)

Entonces, ¿cuál es tu forma de evitar esto ? ¿Has comprado una aplicación de terceros como RAW Trash por $ 16.95 solo para eliminar archivos, o vacías diligentemente la papelera cuando es necesario? ¿O me perdí algo? Además, ¿puede convencerme de que esta es realmente la forma en que debería ser, que los usuarios no deberían ser capaces de jugar con el sistema de archivos fácilmente? :)

Jonik
fuente
1
¿Estaba buscando el acceso directo ⌘+⌥+⌫(Comando + Opción + Eliminar)?
Daniel

Respuestas:

22

Tampoco estoy tan contento con la forma en que Mac OS X maneja esto. Si realmente quiero eliminar algo, especialmente de los dispositivos de memoria USB, generalmente enciendo la Terminal y rmlos archivos manualmente.

Daan
fuente
28

Como muchas personas parecen quererlo, acabo de crear un Servicio para hacer esto, para Snow Leopard, llamado Eliminar inmediatamente . Aparece en el menú Servicios y el menú contextual en Finder.

Puedes descargarlo desde GitHub . Descomprimir el .ziparchivo y mover el resultado " Delete Immediately.service" a la carpeta Servicios en la carpeta de biblioteca, ~/Library/Services/. Es posible que deba cerrar sesión y volver a iniciarla (y / o habilitarla en la sección Servicios de las preferencias de Teclado) para que el sistema reconozca el servicio.

También sugeriría revisar el READMEarchivo en la página principal de GitHub. Y si desea contribuir al código, localizarlo o hacer un icono, ¡no dude en hacerlo!

Menú de contexto

Menú de servicios

jtbandes
fuente
44
Shiney También puede vincular un método abreviado de teclado a este servicio: "En el menú Aplicación, elija Servicios / Preferencias de servicios. Abra Preferencias del sistema / Métodos abreviados de teclado / teclado. Seleccione un servicio, presione Entrar y luego presione el combo de teclas de método abreviado elegido" (desde gingerbeardman.com/services )
dbr
¡Muy bien, gracias! ¿Esto solo funciona en 10.6? (Todavía estaré en Leopard por un tiempo.)
Jonik
1
Solo funciona en 10.6 por ahora, no estoy tan familiarizado con cómo funcionan los Servicios en 10.5 (no se muestran en el menú contextual, y escribir un complemento de menú contextual para 10.5 es un poco más difícil).
jtbandes
Y, Jonik, realmente recomendaría que actualices a 10.6 si tu hardware lo permite (es decir, tienes una Mac Intel). Incluso si no obtendrá muchos de los aumentos de velocidad si no tiene una máquina de 64 bits, como yo no, los pequeños ajustes definitivamente valen la pena por el bajo precio.
jtbandes
1
¿Hay alguna manera de asignar Shift + Del como acceso directo a este servicio? Parece que las Preferencias del Sistema te
emiten
8

La forma sin Terminal de resolver este enigma es lanzar el siguiente hechizo para apaciguar a los dioses de Apple, así:

Seleccione el archivo a sacrificar seguido de recitar:

⌘ Eliminar

⌘ ⇧ ⌥ ⌫

Esto enviará el archivo a la Papelera y luego eliminará toda la Papelera , por lo tanto, debería enviar a la víctima (y todos los demás elementos a la papelera) al olvido.

GeneQ
fuente
¡Genial, gracias! En este momento no puedo confirmar si esto funciona, pero si es así, es exactamente lo que quería :)
Jonik
12
Lo que esto hace es eliminar primero el archivo y luego vaciar la papelera. Si bien es un atajo de teclado útil, en realidad no aborda el problema de no poder eliminar fácilmente los archivos seleccionados.
Daan el
1
De acuerdo Daan. No es ideal Pero usar rm en la Terminal tampoco es una forma ideal y más bien no Mac de hacer cosas. Supongo que nuestro amigo Jonik tendrá que sopesar los pros y los contras. ;-)
GeneQ
99
-1 por respuesta engañosa. ¿Qué pasa si el usuario no quiere vaciar su basura?
hasen
3
-1 también, la pregunta original menciona que vaciar la basura de todo el sistema "¡No es particularmente conveniente!", Que es lo que hace ese acceso directo ..
dbr
4

Para eliminar un archivo específico, sin pasar por la papelera ...

  • abrir una terminal
  • escriba rm(con un espacio final), o rm -rsi planea eliminar un directorio
  • arrastre y suelte el archivo en la ventana Terminal, que ingresa la ruta completa al archivo soltado
  • Presione enter

La solución de servicio "Eliminar de inmediato" de jtbandes es mucho más elegante, pero el "modo Terminal" no requiere ningún software adicional (por lo que es bueno cuando se trabaja en máquinas que no usa regularmente)

dbr
fuente
+1, gracias por arrastrar y soltar en Terminal tip
Jonik
Gracias por el consejo útil, en base a su sugerencia, he hecho una aplicación de cacao simple, aquí está el enlace: daemonconstruction.blogspot.in/2013/01/…
Devarshi
@Miraaj Me alegro de que la respuesta haya sido útil. El enlace de descarga en su blog está roto (el enlace contiene la siguiente oración, en lugar de una URL)
dbr
@dbr ... gracias por informarme ... Lo he actualizado ahora :-)
Devarshi
2

Yo uso rm -rf en la línea de comando. Elimina mucho más rápido y elimina todo. Un problema común que tengo con Windows es que la eliminación es un proceso en lugar de un punto en el tiempo y a menudo veo que Windows elimina carpetas y archivos durante varios minutos. Rm -rf es rápido.

También puede usar rm -rf para eliminar una Papelera específica. La papelera es una carpeta oculta llamada .Trash en la raíz del volumen o directorio relevante.

Y sí, creo que así es como debería ser. Los usuarios no deberían poder eliminar archivos demasiado rápido con Finder. Los archivos deben ser recuperables de la Papelera.

Andrew J. Brehm
fuente
Tenga en cuenta que si el espacio en la Papelera no se cuenta como el espacio utilizado, los archivos en la Papelera se sobrescribirán con el tiempo y ya no podrán recuperarse. Entonces, la elección es realmente entre mantener los archivos en la Papelera y sufrir el golpe de espacio o no mantener los archivos en la Papelera y tener más espacio disponible. Las combinaciones entre los dos son impredecibles para un usuario normal.
Andrew J. Brehm
44
Este es un buen consejo, pero creo que debe dejarse muy claro a los incautos / no conocedores que rm -rf debe usarse con mucho cuidado; borrará todo lo que haya en la carpeta que le haya pasado, incluida la carpeta, sin confirmación. Si se pasa una carpeta del sistema a este comando, puede hacer suficiente daño para requerir que reinstale el sistema operativo (aunque los permisos deberían evitar que destruya el sistema, tiendo a tratar de no confiar en ellos).
Babu el
¿Por qué el voto negativo?
Andrew J. Brehm
2

Parte de la belleza de Mac OS X es que, si bien es muy fácil para los usuarios inexpertos encontrar su camino y hacer las cosas, los usuarios avanzados pueden "jugar con el sistema" utilizando el poder del Unix subyacente a través de un shell de comandos (es decir Terminal.app).

@Leauki tiene razón al usar el comando unix rm, ¡pero TEN CUIDADO, especialmente si usa las -rfbanderas! ¡No hay una red de seguridad y puede causar daños graves, incluso eliminar su propio sistema de archivos raíz!

Mi recomendación no es utilizar rutas absolutas con rm, sino cdentrar en el directorio con el que desea trabajar primero y luego, por ejemplo:

rm -rf ./<subpath to file to delete>donde el ./en la ruta obliga rma operar solo en el directorio en el que se encuentra actualmente.

avstrallen
fuente
55
rm -rf bin - ¡Uy! Olvidé cd, pero no estoy en / así que no soy tan grande. rm -rf / bin - ¡Vaya! Olvidé escribir. así que ¡GRANDES OOPS! (¡Independientemente de a dónde haya llegado)! Entonces no estoy de acuerdo.
Pausado hasta nuevo aviso.
@Dennis: ¡sí, si olvidas escribir el período en el que estás en un mundo de dolor! Creo que esta es la razón principal por la que Apple no quiere que su usuario promedio haga este tipo de cosas, de ahí la funcionalidad de la Papelera con la que el OP estaba teniendo problemas. Por lo tanto, estoy de acuerdo con su desacuerdo, pero parece que usted y yo somos experimentados * nixers que respetamos el comando shell como el lugar potencialmente peligroso que sabemos que es. Solo sugería que los usuarios menos experimentados adquieran un hábito mental antes de usar comandos potencialmente peligrosos.
avstrallen
Gracias. Estoy de acuerdo en que es bastante fácil hacerlo en la línea de comandos. Pero en este caso no me gusta especialmente tener que recurrir a eso ... En Mac OS, no se supone que tengas que usar la línea de comandos para cosas comunes de tipo de usuario final, en mi humilde opinión, y liberar El espacio en una memoria USB es algo bastante común.
Jonik
Estoy de acuerdo con @GeneQ y @Daan, pero tengo una solución metodológica: no pongo nada en la Papelera hasta que estoy seguro de que he terminado y luego vacío la Papelera inmediatamente cada vez que ... el problema está resuelto.
avstrallen
1

Se me ocurrió el siguiente applecript, que estoy obligado a cambiar con Keyboard Maestro, por lo que ahora funciona como en Windows. Con el elemento seleccionado en Finder, shift del ejecutará el script, que muestra un cuadro de diálogo de advertencia sobre la eliminación permanente del elemento con su nombre. Al hacer clic en Aceptar, se completa la eliminación.

No sé mucho sobre los comandos de shell, y algunos de los carteles anteriores advirtieron sobre el peligro de usar rm -rf, que es algo que he hecho en el script. Sin embargo, parece funcionar según lo previsto para mí hasta ahora.

tell application "Finder"
    set myPosixPath to selection as text --returns an alias path
    set myPosixPath to POSIX path of myPosixPath --set it to posix style path with backslashes

    --identify whether it's a file or folder. Only for the warning dialog.
    if character -1 of myPosixPath is "/" then
        set itemType to "folder"
    else
        set itemType to "file"
    end if

    --display a warning
    display dialog myPosixPath & "

This cannot be undone." with title "Really permanently delete this " & itemType & "?"
do shell script "rm -rf " & quoted form of myPosixPath --execute a shell script to delete the item
end tell
gordo
fuente
Para todas las cosas que Mac OS X aún no proporciona, existe Keyboard Maestro.
Kaushik Gopal
0

Creo que esto se hace por la consistencia y seguridad del usuario. Creo que es mejor mantener los archivos durante más tiempo del requerido y usar espacio en lugar de ser entusiasta y eliminarlos de inmediato.

Sin embargo, esto es un poco molesto cuando trabajas con memorias USB y las mueves a una máquina con Windows y vas a ... dónde está todo mi espacio ... y qué es esta molesta carpeta .trash.

Bruce McLeod
fuente
0

Use muCommander para eliminar archivos (es gratis)

En lugar de usar el Finder, quizás use otro administrador de archivos como muCommander. Puede eliminar archivos y mover archivos a la papelera también. Es mucho más seguro que pegar "rm -rf" en una Terminal, donde corre el riesgo de pegar los comandos incorrectos causando daños que son irreversibles.

neoneye
fuente
0

Si realmente desea utilizar una aplicación de terceros , una alternativa mucho más barata a la Papelera RAW que mencionó es File Shredder . (US Mac App Store $ 3.99)

Ofrece varias formas de eliminar archivos de forma segura:

  • Una eliminación normal de una pasada que simplemente sobrescribe sus archivos.
  • Un pase compatible con DoD de siete pasos asegura que la mayoría de las personas no puedan ingresar a sus archivos.
  • Una eliminación de Gutmann de 35 pases asegura que sus archivos desaparezcan realmente cuando los elimine.

Esto puede ser un poco exagerado para la mayoría de las personas, aunque si está buscando una forma más económica que RAW Trash para eliminar archivos de forma segura, FileShredder hace el trabajo.

Simon
fuente