赞
踩
苹果本是开发人员的首选本,颜值好,稳定,和unix深度融合,使用丝滑。那苹果本下的开发环境需要哪些装备呢?
说明一下:本文还在整理中,目前比较凌乱
Adobe Photoshop CS6 不解释,OS X下体验更佳。
Parallels Desktop OS X? 我花了500块钱买它,后来几乎不用它了。
Axure RP 比较好用的产品原型设计工具。
XMind 比较好用的一款思维导图工具。
astah professional 一款比较专业的UML画图工具。
DrawIO:流程图,UML
集成开发环境,JetBrains系列。
如果你是Java开发者(或者同时编辑Ruby,Python,PHP,JavaScript,Scala,Groovy,Clojure等程序),强烈建议你安装IntelliJ IDEA。如果你只做前端开发,那么WebStrom是不错的选择,另外,RubyMime,PyCharm,PhpStorm作为Ruby,Python,PHP的单项开发环境也不错。
如果你不想花钱,又不想使用盗版软件,那么Eclipse,NetBeans也可以凑合着用。
Chrome 速度快,调试方便,目前是我开发主要使用的浏览器。
Firefox 有点笨重,但是作为开发调试工具还是不错的。
Safari,系统自带的默认浏览器,和OSX系统集成度高,可以实现在不同的Apple设备之间同步阅读进度。
Opera,App Store上提供直接下载,小巧,快速。
选择合适的Terminal
相比原生的Terminal,我更喜欢使用 iTerm2,它提供了很多现代的特性,比如主题定制,分屏,自动完成等多种功能。
个人推荐SecureCRT,用了多少年了,方便
XCode可以直接从App Store上下载和更新,安装完以后,我们需要启动它一次,这个时候它会提示你去接受它的协议。 接下来,我们需要安装Command Line Tool。
xcode-select --install
安装oh-my-zsh
oh-my-zsh是一套开源,社区驱动的用于管理zsh配置的框架,可以使用如下的方式安装。
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
# Optionally, backup your existing ~/.zshrc file
cp ~/.zshrc ~/.zshrc.orig
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
# Set Zsh as your default shell:
chsh -s /bin/zsh
接下来,重启你的命令行就可以发现oh-my-zsh已经配置好了。
如果你想更改zsh的配置,可以编辑~/.zshrc个性化你的配置。
比如我本地的配置为:
ZSH_THEME=“jameszhan”
plugins=(git svn mvn brew gem go lein npm node rails ruby rvm)
Homebrew是OSX下非常好用的包管理工具,类似于Ubuntu下的apt-get,用于替换OSX下的老牌包管理工具port。
安装Homebrew之前,你必须要有GitHub账户,并已经配置好了你的SSH keys。
ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
通过Homebrew安装一些实用工具
brew update
brew install curl wget tree gnu-sed gawk rename
通过Homebrew安装一些常用服务
brew update
brew install redis mysql postgresql mongodb sqlite nginx
brew install grails
在Windows下,我们有很多视频格式转换的工具,尽管良莠不齐,但是只要有耐心,总是可以达到转换的要求,在OS X下,App Store上也可以找到一些转码工具,但是一般都价格不菲。事实上,绝大部分视频转码工具底层都用到了FFmpeg,而FFmpeg是完全开源和免费的,既然如此,我们为何不直接使用ffmpeg来进行视音频的转码处理呢。
查看ffmpeg的安装选项,可以按照你自己的要求选装
brew info ffmpeg
brew install ffmpeg --with-fdk-aac --without-faac
#列出支持的编解码器
ffmpeg -codecs
#列出支持的滤镜
ffmpeg -filters
#列出支持的格式
ffmpeg -formats
cat VIDEO_TS.VOB VTS_01_0.VOB VTS_01_1.VOB VTS_01_2.VOB | ffmpeg -i - ~/mika_01.mp4
ffmpeg -i INPUT.flv -acodec libmp3lame -ab 128k OUTPUT.mp3
ffmpeg -i INPUT.avi -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -qmin 3 -qmax 5 -bufsize 4096 -g 300 -acodec aac -ab 192 -s 320x240 -aspect 4:3 OUTPUT.mp4
注:FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。
Extended Attributes (EAs)
当我们使用ls -l查看文件目录时,细心的同学会发现有些文件的ACL后面都多一个@,这个就是我们这节要讨论的扩展属性。
-rw-r–r–@ 1 james admin 3409417 Oct 21 22:54 CoRD.zip
-rw-r–r–@ 1 james admin 755402 Oct 21 22:54 HexFiend.zip
在UNIX/Linux当中,文件可以拥有rwx之外的扩展属性,在本例中,测试的几个文件打上了颜色的tag,要查看扩展属性的详情,可以使用命令ls -l@查看。
-rw-r–r–@ 1 james admin 3409417 Oct 21 22:54 CoRD.zip
com.apple.FinderInfo 32
com.apple.metadata:_kMDItemUserTags 53
-rw-r–r–@ 1 james admin 755402 Oct 21 22:54 HexFiend.zip
com.apple.FinderInfo 32
com.apple.metadata:_kMDItemUserTags 53
可以使用xattr命令来操作扩展属性。
xattr -d com.apple.metadata:_kMDItemUserTags CoRD.zip
xattr -w hello world CoRD.zip
ls -l@ CoRD.zip结果如下:
-rw-r–r–@ 1 james admin 3.3M Oct 21 22:54 CoRD.zip
hello 5B
使用xattr -cr TARGET可以清空目标文件所有的扩展属性信息,这个对于从TimeMachine拷贝出来的文件批量清除扩展属性特别有效。
另外,在复制文件的过程中,cp指定-X可以取消复制EAs。
diskutil list
diskutil info /Volumes/HHD
#如果挂载点目录不存在,需要先创建它
diskutil mount -mountPoint /opt/ /dev/disk2s2
注意,如果你的硬盘已经挂载到了具体目录,比如/Volumes/HDD,在挂载前,你必须先卸载它。
diskutil unmount /dev/disk2s2
通过以上的命令,我们确实可以做到把硬盘挂载到具体目录,然后当我们机器重启后,通过刚刚命令修改的配置就会失效。如果我们想固定把硬盘加载到某个目录(尤其当我们第二块硬盘也是内置硬盘)时,又当如何处理呢?事实上,非常简单,执行如下命令,在fstab中加入一条记录即可。
sudo vifs
我的电脑配置记录如下:
UUID=DE74EC97-3EFC-3197-AC0E-AC596773D738 /opt hfs rw 1 0
注意:UUID即为命令diskutil查看该卷详情得到的Volume UUID,在挂载前,必须保证挂载的目录已经存在.
Finder显示默认隐藏的文件
defaults write com.apple.finder AppleShowAllFiles -bool YES
killall Finder
defaults write com.apple.finder AppleShowAllFiles -bool NO
killall Finder
TimeMachine中命令行操作权限问题
删除指定的目录
Before OSX 10.9
sudo /System/Library/Extensions/TMSafetyNet.kext/Helpers/bypass rm -frv 2011-10-16-232226/Macintosh\ HD/opt/
After OSX 10.10
sudo /System/Library/Extensions/TMSafetyNet.kext/Contents/Helpers/bypass rm -frv 2011-10-16-232226/Macintosh\ HD/opt/
sudo /System/Library/Extensions/TMSafetyNet.kext/Contents/Helpers/bypass find . -name ‘.DS_Store’ -print -delete
重装完系统,特别是在有第二块硬盘的情况下,在使用TimeMachine的时候,会发现整个硬盘很有可能要重新备份,而不是在原来的基础上增量备份,这无疑是对备份空间的巨大浪费,如果你之前已经备份了该磁盘的话,可以强制把TimeMachine中的对应备份强制恢复到该分区即可解决这个问题。
sudo find / -name ‘.DS_Store’ -print -delete
find . -type d -empty -delete -print
find . -type f -size +100000k
find . -type f -size +100000k -exec ls -lh {} ; | awk ‘{ print $5 " => " $9 " " $10 }’
tail -fn 500 /var/log/messages #参数-f使tail不停地去读最新的内容,这样有实时监视的效果
split -b 300m BIGFILE PREFIX
cat PREFIX* > BIGFILE
du -sh /opt
df -h
echo $SHELL
echo $0
env | grep SHELL
cat /etc/passwd | grep USERNAME
scp -P 22 admin@192.168.1.96:/home/admin/test.tar.gz ~/test.tar.gz
scp -P 22 -r admin@192.168.1.96:/home/admin/test/ ~/test
scp -P 22 /home/james/test.tar.gz admin@192.168.1.96:/home/admin/test.tar.gz
scp -P 22 -r /home/james/test/ admin@192.168.1.96:/home/admin/test
本例演示了把当前目录下的所有MP3文件的名称去除多余的字符,只保留序号。
rename ‘s/.+(\d+).mp3/$1.mp3/’ *.mp3
wget -r -np http://www.sandpile.org/
chflags -R nouchg /PATH/TO/DIRECTORY/WITH/LOCKED/FILES/
id
finger
uname -a
ulimit -a
Homebrew
iTerm2
oh-my-zsh
Powerlevel10k
Zsh syntax highlighting and autosuggestions
Fuzzy Finder
tldr
asdf
SDKMAN!
bat
Git
Docker
Colima
HTTPie
Postman
IntelliJ
Visual Studio Code
Cheatsheet
Magnet
CleanShotX
Macs Fan Control
SoundSource
AppCleaner
Google Drive
Cyberduck
KeePassXC
Choosy
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。