Joh*_*tch 2 linux productivity hosts macos
伙计们。为了提高我的工作效率,我想在白天的时间段内有选择地阻止或重定向某些网站。我已经在我的 /etc/hosts 中完全阻止了一些站点,但是只有在特定时间段内处于活动状态才使我无法理解。
奖励:我还希望能够阻止主域,但允许其中的特定页面。例如,阻止 reddit.com,但允许 reddit.com/r/javascript
谢谢你的尽心帮助!
虽然@smw 的答案看起来可能是您的解决方案,但没有什么比“自己动手”更合适的了——如果只是为了满足。
基于我上面的评论,我假设您可以创建一个 /etc/hosts 文件,为您提供所需的权限。我将像上面一样调用它们,worktimeHosts并且playtimeHosts. 现在您需要一个脚本来将一个或另一个设置为活动文件。这假设您已将 /etc/hosts 移开...
创建一个脚本:
#!/bin/bash
rm /etc/hosts
ln -s /etc/worktimeHosts /etc/hosts
Run Code Online (Sandbox Code Playgroud)
另存为/usr/bin/getWorking,设置权限执行chmod 755 /usr/bin/getWorking
现在创建第二个脚本:
#!/bin/bash
rm /etc/hosts
ln -s /etc/playtimeHosts /etc/hosts
Run Code Online (Sandbox Code Playgroud)
将其另存为 /usr/bin/getPlaying,像以前设置权限
您必须确保您有权对 /etc 中的文件执行这些操作...
现在编辑cron表格(参见此处的示例)
`crontab -e`
Run Code Online (Sandbox Code Playgroud)
添加如下一行:
00 00 08 * * /usr/bin/getWorking
Run Code Online (Sandbox Code Playgroud)
另一行是这样的:
00 00 17 * * /usr/bin/getPlaying
Run Code Online (Sandbox Code Playgroud)
我认为这将接近解决方案 - 但我还没有测试过这个,所以玩它并找出我的错误......
| 归档时间: |
|
| 查看次数: |
1518 次 |
| 最近记录: |