使用brew services管理服务

 mac  使用brew services管理服务已关闭评论
11月 122019
 

mac使用launchctl命令加载开机自动运行的服务,而brew service 可以简化这种操作。

以brew install redis后自启动redis为例,使用launchctl启动过程如下:

  1. ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents
  2. launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
  3. brew services restart redis

常用命令

brew services list  # 查看使用brew安装的服务列表

brew services run formula|–all  # 启动服务(仅启动不注册)

brew services start formula|–all  # 启动服务,并注册

brew services stop formula|–all   # 停止服务,并取消注册

brew services restart formula|–all  # 重启服务,并注册

brew services cleanup  # 清除已卸载应用的无用的配置

 

配置文件目录

/Library/LaunchDaemons # 开机自启,需要sudo

~/Library/LaunchAgents # 用户登录后自启

 

 

举例:homebrew.mxcl.redis.plist格式如下:

<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0″>
<dict>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>Label</key>
<string>homebrew.mxcl.redis</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/redis/bin/redis-server</string>
<string>/usr/local/etc/redis.conf</string>
<string>–daemonize no</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>/usr/local/var</string>
<key>StandardErrorPath</key>
<string>/usr/local/var/log/redis.log</string>
<key>StandardOutPath</key>
<string>/usr/local/var/log/redis.log</string>
</dict>
</plist>

 

官网参考内容:
https://github.com/Homebrew/homebrew-services

mac 下 redis 安装、redis.conf位置、redis-server后台运行

 redis  mac 下 redis 安装、redis.conf位置、redis-server后台运行已关闭评论
11月 122019
 

mac下安装redis命令:

brew install redis

 

如果没有安装homebrew,可以打开一个终端,输入下面命令安装:

/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

 

启动:

redis-server 命令直接启动会运行在一个终端里,关闭终端服务就停止了,也没有运行参数可以后台运行,但可以通过修改配置文件参数实现。

mac下brew安装的redis的配置文件默认所在位置: /usr/local/etc/redis.conf

修改: 将 daemonize no 修改为 daemonize yes

 

再启动

redis-server /usr/local/etc/redis.conf

redis就会后台运行了

 

如果要开机启动,使用下面命令:

ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist

brew services start redis

pip安装包到指定目录方法(指定路径)

 mac, pip, python  pip安装包到指定目录方法(指定路径)已关闭评论
10月 242019
 

mac中使用pip安装包后,可能会发现明明提示“Successfully installed xxx“,但就是找不到这个包“ImportError: No module named  xxx”?

其实是这样: 默认pip安装在/usr/local/lib/python2.7/site-packages, 但如果sudo pip安装则会安装在/lib/python2.7/site-packages,那如果我要指定安装包的路径需要怎么做呢?使用下面的黑体字命令即可,在-install-option里添加–install-purelib指定目录即可,以下命令安装google-api-python-client包到/usr/local/lib/python2.7/site-packages

pip install --install-option="--install-purelib=/usr/local/lib/python2.7/site-packages" google-api-python-client

 

DONE!!!

mac下使用pip安装模块时,出现错误提示:     “must supply either home or prefix/exec-prefix — not both”

 mac, python  mac下使用pip安装模块时,出现错误提示:     “must supply either home or prefix/exec-prefix — not both”已关闭评论
10月 232019
 

mac下使用pip安装时,出现错误提示:

    “must supply either home or prefix/exec-prefix — not both”

DistutilsOptionError: must supply either home or prefix/exec-prefix — not both

 

参考Homebrew python页 https://github.com/Homebrew/brew/blob/master/docs/Homebrew-and-Python.md

在文件~/.pydistutils.cfg中加入如下内容:

[install]

prefix=

 

再pip安装即可!

Python mac运行 pygame 空白, 图片不显示内容 解决方案

 mac  Python mac运行 pygame 空白, 图片不显示内容 解决方案已关闭评论
10月 092019
 

问题描述: 运行pygame含图片相关的程序,图像不显示。

错误产生环境:macOS MOjave

问题原因:Pygame与MacOS Mojave 不兼容 #见 https://github.com/pygame/pygame/issues/555

可以使用下面一行语句测试是否是这个原因,运行系统示例代码,打开一个窗口,可以听到声音和音乐,但一直是黑色屏幕或白色屏幕表面
python -m pygame.examples.aliens

网上的解决方案:

  1. 将操作系统降级为macOS High Sierra
  2. 安装Miniconda虚拟环境运行pygame

以上方法都比较坑,其实如果为了现在可运行pygame程序,可以使用下面的方法:暂时先安装pygame 2.0的dev版本,等后续2.0正式版本出来后再更新。

以下命令安装pygame 2.0.0.dev4版本:

python3 -m pip install pygame==2.0.0.dev4 –pre –user

再运行原来的程序,done!!!

mac下使用第三方工具Xnip完美滚动截图

 mac  mac下使用第三方工具Xnip完美滚动截图已关闭评论
9月 182019
 

Mac可以使用腾讯的Snip进行滚动截图,但这种截图有个缺陷: 它只能截取完整的窗口,有没有可以选取部分的滚动截图?? 有,Xnip, 而且免费,功能更是逆天!!!!!

很久以来 macOS 都被吐槽没有足够好用的截屏工具,以至于当非常强大的 Snipaste 问世时,很多用户的第一反应就是「什么时候有 Mac 版?」。在愿望成真之余,另一款截屏工具 Xnip 也悄然发布——小巧而强大,还有很多非常实用的独有功能哦。

常见的截屏功能 Xnip 都支持,比如窗口识别、标注等;特别是 Xnip 支持「步骤标注」,需要经常制作教程的用户一定喜欢。

Xnip 还优化了截屏的流程。一般来讲截屏的步骤分为「区域选择 – 确认选择 – 标注 / 编辑 – 保存」,而一旦进入了「标注 / 编辑」状态,用户便无法再次改变选择的区域。虽然可能很多用户都觉得无所谓,重新来一遍或是事后再裁剪就好了,但是如果已经标注了一大堆才发现区域不对,也挺烦恼的。而 Xnip 允许用户在标注过程中随意改变已选择的区域,不得不佩服开发者的细心。

Xnip 也支持滚动截屏,使用体验和别家也是非常不一样,滚动的时候旁边有实时预览,感觉非常爽快自然。

特别值得一提的是,Xnip 的滚动截图还能保留动图的动态,虽然我暂时没想到使用场景是什么,可能…用作呈堂证供?再次佩服开发者对各种细节的观察与思考。

Xnip 是国内开发者 ZekeDa 的作品,可在 Mac App Store 免费下载。免费版可使用所有功能,只是在保存时会被加上「水印」——说是水印,其实只会加在截屏以外的区域,并不影响阅读或破坏截屏完整性。

mac下使用第三方工具snip滚动截图

 mac  mac下使用第三方工具snip滚动截图已关闭评论
9月 182019
 

Snip是腾讯出一款截图工具,使用简单便捷。

1.我们点击pkg去安装。

2.打开snip的偏好设置…。在 启动滚动截图 处打勾。

3.在系统偏好设置–>安全性与隐私, 选择隐私标签,找到左边辅助功能界面, 将右面的snip.app处打勾

4. 使用自己在snip定义的快捷键(默认command + control + a)或直接点截屏命令截取(记得需要截的东西具有滚动功能,如果有滚动功能),如滚动截取网页:首先保持Snip在开启状态,然后使用截屏,点下网页窗口即可看到“正在截取滚动区域”框。

done!

MAC下截图及使用chrome截取长网页图

 mac  MAC下截图及使用chrome截取长网页图已关闭评论
9月 182019
 

Mac有自带截图功能。

(1)Shift + Command + 3,会将生成图片自动保存到桌面上。

(2)Shift + Command + 4,会出现十字光标,按需选中要截图的内容后,会将生成图片自动保存到桌面上。

(3)Shift + Command + 4,会出现十字光标,按空格键,出现相机图标,然后点击界面,就会把当前界面生成图片自动保存到桌面上。

以上截图方式就已经很方便,那么,如果要截长图,有什么好的办法呢?

Chorme浏览器有自带截长图功能,方便好用。

打开需要截长图的网页,右键–检查–Shift + Command + P,输入“screen”,选择

“Capture full size screenshot”:

success ~

会生成一张以当前页面url命名的长截图,并会将生成图片自动保存到下载里面,通过Finder可以找到。

当然,我们也可以用同样的方法,局部截图:

通过审查元素,选中我们需要截图的div盒子,选择:

“Capture node screenshot”

就可以实现局部截图了。

docker 在mac系统下, 修改/etc/docker/daemon.json期望改变dns无效解决方法

 docker  docker 在mac系统下, 修改/etc/docker/daemon.json期望改变dns无效解决方法已关闭评论
7月 252019
 

mac系统下,直接修改/etc/docker/daemon.json期望改变容器的dns是无效的,正确的方式是:

点击应用程序里的docker.app 或者 点击顶部工具条中 “鲸鱼”的icon –> 选择“preferences”  –> daemon –> advanced , 在这里更改, 修改完后点击 “apply && restart”,  再运行容器时, 可以看到容器中/etc/resolv.conf的dns已经是修改后的了。

mac下安装MySQL_python时出现_mysql.c:44:10: fatal error: ‘my_config.h’ file not found

 python  mac下安装MySQL_python时出现_mysql.c:44:10: fatal error: ‘my_config.h’ file not found已关闭评论
12月 242018
 

mac下使用brew install mysql,安装pip install MySQL-python出现下面错误提示: 

    _mysql.c:44:10: fatal error: ‘my_config.h’ file not found
    #include “my_config.h”
             ^~~~~~~~~~~~~
    1 error generated.
    error: command ‘cc’ failed with exit status 1

网上很多方法都无效,使用下面都步骤可解决

brew remove mysql
brew install mysql@5.7
brew link --force mysql@5.7
pip install msyql-python (如权限不足,请使用sudo)