使用 sshfs 很容易把服务器上远程目录挂载到本地操作,非常方便。

在 Mac OSX 使用 brew 很容易安装 sshfs

安装 brew 点击:http://brew.sh/index_zh-cn.html 或者把下面这个粘贴到终端就可以安装了

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

命令安装 sshfs

brew install sshfs

网站下载

下载:osxfuse-2.7.3.dmg http://osxfuse.github.io/

下载:sshfs-2.5.0.pkg https://github.com/osxfuse/sshfs/releases/

都安装了就搞定了。

使用 sshfs 挂载远程目录到本地:

sshfs -C -o reconnect user@host:dir localdir

更多 sshfs 的用法可以 sshfs -h 查看。

sublime惹的祸

*用sublime编辑markdown时,下载了一个插件然后更新blog就出问题了没有标题.用vim一看才知道.那个插件把换行符都变成^M了.直接替换还不行.

在vim编辑模式下输入:

  • :%s/^M/\r/g #^M必须用ctrl+V+M来获得
  • 这样会替换掉所有的^M为换行,再保存文件就ok

一.Mac OSX 快捷键

ctrl+shift 快速放大dock的图标会暂时放大,而如果你开启了dock放大
Command+Option+W 将所有窗口关闭
Command+W 将当前窗口关闭(可以关闭Safari标签栏,很实用)
Command+Option+M 将所有窗口最小化
Command+Q 关闭当前应用程序(相当于Dock鼠标右键推出.很实用)
Command+M 将目前使用的窗口最小化
Command+H 隐藏当前窗口或者软件

Command+tab 为切换当前工作任务
Control+Command+S 切换控制条的显示和隐藏
Command+i 常规信息(显示及设置图标属性)
Command+delete 移到废纸篓(删除)
Optionion+鼠标 拖图像或文件夹可以将图像或文件夹拷贝到其它文件夹中,而不是移动
Command+Shift+backspace 清空废纸篓(再加上option一起按能跳过确认对话框)
Command+N 键可以建立新文件夹 “return”或“enter”或“O”键可以打开所选项目
Command+Option+esc 键可以强行退出死机程序

Command+Shift+3 截图(当前屏幕)
Command+Shift+4 截图(自由选取范围)
Option+F12 关机窗口(能选择关机、重起、睡眠)
Command+1 以图标方式显示
Command+2 以分栏方式显示
Command+3 以列表方式显示
Command+4 以Cover Flow方式显示
return或enter 键可以编辑所选图像或文件夹的名称

二.Mac OSX 命令行:

基本命令
1、列出文件
ls 参数 目录名 例: 看看驱动目录下有什么:ls /System/Library/Extensions
参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件
2、转换目录
cd 例:想到驱动目录下溜达一圈 cd /System/Library/Extensions

3、建立新目录
mkdir 目录名 例:在驱动目录下建一个备份目录 backup mkdir /System/Library/Extensions/backup
在桌面上建一个备份目录 backup mkdir /User/用户名/Desktop/backup

4、拷贝文件
cp 参数 源文件 目标文件 例:想把桌面的Natit.kext 拷贝到驱动目录中 cp -R /User/用户名/Desktop/Natit.kext /System/Library/Extensions
参数R表示对目录进行递归操作,kext在图形界面下看起来是个文件,实际上是个文件夹。
把驱动目录下的所有文件备份到桌面backup
cp -R /System/Library/Extensions/* /User/用户名/Desktop/backup
5、删除文件
rm 参数 文件 例:想删除驱动的缓存 rm -rf /System/Library/Extensions.kextcache rm -rf /System/Library/Extensions.mkext
参数-rf 表示递归和强制,千万要小心使用,如果执行了 rm -rf / 你的系统就全没了

6、移动文件
mv 文件 例:想把AppleHDA.Kext 移到桌面 mv /System/Library/Extensions/AppleHDA.kext /User/用户名/Desktop
想把AppleHDA.Kext 移到备份目录中 mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup

7、文本编辑
nano 文件名 例:编辑natit Info.plist nano /System/Library/Extensions/Natit.kext/Info.plist

目录操作:
命令名 功能描述 使用举例

mkdir 创建一个目录 mkdir dirname
rmdir 删除一个目录 rmdir dirname
mvdir 移动或重命名一个目录 mvdir dir1 dir2

cd 改变当前目录 cd dirname
pwd 显示当前目录的路径名 pwd
ls 显示当前目录的内容 ls -la

文件操作:
命令名 功能描述 使用举例

cat 显示或连接文件 cat filename
od 显示非文本文件的内容 od -c filename
cp 复制文件或目录 cp file1 file2

rm 删除文件或目录 rm filename
mv 改变文件名或所在目录 mv file1 file2
find 使用匹配表达式查找文件 find . -name “*.c” -print
file 显示文件类型 file filename

选择操作:
命令名 功能描述 使用举例

head 显示文件的最初几行 head -20 filename
tail 显示文件的最后几行 tail -15 filename
cut 显示文件每行中的某些域 cut -f1,7 -d: /etc/passwd
colrm 从标准输入中删除若干列 colrm 8 20 file2

diff 比较并显示两个文件的差异 diff file1 file2
sort 排序或归并文件 sort -d -f -u file1
uniq 去掉文件中的重复行 uniq file1 file2
comm 显示两有序文件的公共和非公共行 comm file1 file2
wc 统计文件的字符数、词数和行数 wc filename
nl 给文件加上行号 nl file1 >file2

进程操作:
命令名 功能描述 使用举例

ps 显示进程当前状态 ps u
kill 终止进程 kill -9 30142

时间操作:
命令名 功能描述 使用举例

date 显示系统的当前日期和时间 date
cal 显示日历 cal 8 1996
time 统计程序的执行时间 time a.out

网络与通信操作:
命令名 功能描述 使用举例

telnet 远程登录 telnet hpc.sp.net.edu.cn
rlogin 远程登录 rlogin hostname -l username
rsh 在远程主机执行指定命令 rsh f01n03 date

ftp 在本地主机与远程主机之间传输文件 ftpftp.sp.net.edu.cn
rcp 在本地主机与远程主机 之间复制文件 rcp file1 host1:file2

ping 给一个网络主机发送 回应请求 ping hpc.sp.net.edu.cn
mail 阅读和发送电子邮件 mail
write 给另一用户发送报文 write username pts/1
mesg 允许或拒绝接收报文 mesg n

Korn Shell 命令 :
命令名 功能描述 使用举例

history 列出最近执行过的 几条命令及编号 history
r 重复执行最近执行过的 某条命令 r -2
alias 给某个命令定义别名 alias del=rm -i
unalias 取消对某个别名的定义 unalias del

其它命令
命令名 功能描述 使用举例

uname 显示操作系统的有关信息 uname -a
clear 清除屏幕或窗口内容 clear
env 显示当前所有设置过的环境变量 env
who 列出当前登录的所有用户 who
whoami 显示当前正进行操作的用户名 whoami
tty 显示终端或伪终端的名称 tty
stty 显示或重置控制键定义 stty -a
du 查询磁盘使用情况 du -k subdir
df /tmp 显示文件系统的总空间和可用空间
w 显示当前系统活动的总信息

mac 删除文件夹里所有的.svn文件
直接在终端里面,执行命令(貌似目录名中不能包含空格):
sudo find /Users/cundong/Documents/source -name “.svn” -exec rm -r {} \;
把手机中文件取出来
adb pull /sdcard/360Download/source.apk /Users/cundong/Desktop/target.apk
将MAC中文件推到手机中
adb push /Users/cundong/Desktop/source.apk /sdcard/360Download/target.apk

反编译APK中java文件
1).解压APK,得到 classes.dex;
2).下载dex2jar http://code.google.com/p/dex2jar/
解压
给权限 chmod +x dex2jar.sh
运行 ./dex2jar.sh /Users/cundong/Desktop/xxxx.apk
3).下载jd-gui可以直接打开看。 http://java.decompiler.free.fr/

(不断更新)

mac新手收录一下:
Ctrl + h 退格删除一个字符,相当于通常的Backspace键
Ctrl + u 删除光标之前到行首的字符
Ctrl + k 删除光标到行尾的字符
Ctrl + c 取消(cancel)当前行输入的命令,相当于Ctrl + Break
Ctrl + a 光标移动到行首(Ahead of line),相当于通常的Home键
Ctrl + e 光标移动到行尾(End of line)
Ctrl + l 清屏,相当于执行clear命令
Ctrl + p 调出命令历史中的前一条(Previous)命令,相当于通常的上箭头
Ctrl + n 调出命令历史中的下一条(Next)命令,相当于通常的上箭头
Ctrl + w 删除从光标位置前到当前所处单词(Word)的开头
Ctrl + y 粘贴最后一次被删除的单词
Alt+← 光标单词间移动(向左)
Alt+→ 光标单词向右移动

批量删除Key

  • Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过我们可以借助 Linux 的 xargs 指令来完成这个动作

  • redis-cli keys “*” | xargs redis-cli del

如果redis-cli没有设置成系统变量,需要指定redis-cli的完整路径

  • //如:/opt/redis/redis-cli keys “*” | xargs /opt/redis/redis-cli del

如果要指定 Redis 数据库访问密码,使用下面的命令

  • redis-cli -a password keys “*” | xargs redis-cli -a password del

如果要访问 Redis 中特定的数据库,使用下面的命令

  • //下面的命令指定数据序号为0,即默认数据库

  • redis-cli -n 0 keys “*” | xargs redis-cli -n 0 del

删除所有Key

  • 删除所有Key,可以使用Redis的flushdb和flushall命令

  • //删除当前数据库中的所有Key

  • flushdb

  • //删除所有数据库中的key

  • flushall

  • 注:keys 指令可以进行模糊匹配,但如果 Key 含空格,就匹配不到了,暂时还没发现好的解决办法。