The only keyboard shortcut you need to remember (Mac)

is cmd+? (press cmd+shift+[?/])
It opens help->search textbox. Then you type any command in the menu and press enter to execute.

Hooray!

Comments(0)

用rsync同步

rsync是功能强大的同步工具, 比synctoy之类的强多了. 但命令行的参数太麻烦, 每次用又忘记了, 所以这里整理一下, 方便日后使用

1.拷贝文件, 如果用cp或者scp的话, 所有的文件都会重新覆盖一边, 大量拷贝的时候会太慢. 用rsync就可以先比较再拷贝, 速度快多了.比如我发布本地的网页到服务器上,就可以用

rsync -rlv ~/websites/sitename/ username@server:~/public_html/

-r 是recursive
-l copy symlinks as symlinks
-v increase verbosity
此外还可以用 -u update, 如果服务器上的文件新则跳过.

2.备份照片,视频等. 只需要一个-a 的参数即可

rsync -a --delete ~/Pictures/iPhoto\ Library /Volumes/MG_MAC/iPhoto\ Library/

-a 是archive的意思, 存档, 等效于-rlptgoD, recursive, copy symlinks as symlinks, preserve permissions, 等等.
–delete delete extraneous files from destination dirs是删除备份处已有的多余文件. 这个根据个人需要添加

此外,一个有用的参数是 -u, dry-run, 只是看下都有哪些文件会同步. 但这个参数仍旧会删除多余文件, 所以一定要确保src dest和dest dir都正确的情况下再按下enter.

目前对于我来讲,这两个已经够用了. 用起来也很简单方面. 其他复杂的参数俺也不会. 以后要是有新的tips了俺慢慢加上.

update: 刚发现了个小tip, 在src dir后面如果带”/”,则同步的是这个dir里面的所有文件而不包含该src dir本身;若不带”/”,则同步的是src dir本身. 这个和cp的效果是一样的. 所以,非常重要的是, 如果src dir带”/”,并且用了–delete参数了的话, 则同步完成后dst dir将和src dir一模一样了. 若src dir不带”/”,则同步完成后dst dir将拥有一个目录和src dir一样. 千万别混用,而导致其他文件的丢失.

Comments(0)