Redirigir dominios localmente (como con /etc/hosts) durante ciertas horas del día

Redirigir dominios localmente (como con /etc/hosts) durante ciertas horas del día

amigos. Con el fin de aumentar mi productividad, me gustaría bloquear o redirigir selectivamente ciertos sitios web en bloques de tiempo durante el día. Ya tengo algunos sitios completamente bloqueados en mi /etc/hosts, pero tener el bloqueo activo solo durante un período determinado es algo que se me ha escapado.

Bonificación: también me gustaría poder bloquear un dominio principal, pero permitir páginas específicas dentro. Por ejemplo, bloquear reddit.com, pero permitir reddit.com/r/javascript

¡Gracias por cualquier ayuda que pueda ofrecer!

Respuesta1

Quizás algo como esto solucione tu problema: http://www.getconcentrating.com/?

Respuesta2

Aunque la respuesta de @smw parece que podría ser tu solución, no hay nada como "hacer la tuya propia", aunque sólo sea por la satisfacción.

Sobre la base de mi comentario anterior, supongo que puede crear un archivo /etc/hosts que le otorgue los permisos que desee. Voy a llamarlos, como arriba, worktimeHostsy playtimeHosts. Ahora necesita una secuencia de comandos para configurar uno u otro como archivo activo. Esto supone que has movido tu /etc/hosts fuera del camino...

Crea un guión:

#!/bin/bash
rm /etc/hosts
ln -s /etc/worktimeHosts /etc/hosts

guárdelo como /usr/bin/getWorking, establezca permisos para ejecutarchmod 755 /usr/bin/getWorking

Ahora crea un segundo script:

#!/bin/bash
rm /etc/hosts
ln -s /etc/playtimeHosts /etc/hosts

Guárdalo como /usr/bin/getPlaying, establece los permisos como antes.

Debes asegurarte de tener permiso para hacer estas cosas en archivos en /etc...

Ahora edite la crontabla (ver por ejemploaquí)

`crontab -e`

Añade una línea como esta:

00 00 08 * * /usr/bin/getWorking

Y otra línea como esta:

00 00 17 * * /usr/bin/getPlaying

Creo que estará cerca de una solución, pero no lo he probado, así que juegue con él y encuentre mis errores...

Respuesta3

(Dado que esto está etiquetado como 'osx', asumiré que una solución 'solo OS X' sería aceptable).

  1. El nombre irónicoAutocontrolpuede hacer esto. Le permitirá definir sitios de "lista blanca" o "lista negra" para permitir o bloquear, y le permitirá establecer un límite de tiempo de vencimiento. Es gratis yel código fuente está disponible.

  2. También hayMacLibertadque cuesta $ 10 y hace algo similar. Hayuna versión de prueba gratuita disponible.

(He usado ambos en el pasado pero no estoy relacionado con ninguno).

Nota: Si puedo ofrecer una palabra de experiencia, sugeriría no establecer un límite de tiempo DEMASIADO largo, en caso de que cometa un error. Esmuy muyEs difícil "deshacer" esto antes de que expire el plazo. (Lo cual es un problema potencial con cualquier otra solución que puedas simplemente "deshacer" si te aburres, ¡es posible!)

información relacionada