Mac OS 个人常用Terminal技巧整理
刚开始接触linux有些不适应,走了不少弯路,一直没有系统的学过linux应用,基本都是零零散散Google出来的知识,在这里做个整理:
Vi/Vim 基本操作:
刚开始接触linux时,不懂vi吃了不少亏.在命令行状态下,一旦用vi打开了文本只能通过重启来退出.
vi/vim 分三种模式: 指令模式,编辑模式,选择模式. 只有在编辑模式下才能进行输入(不是绝对).
默认是"指令模式", 这个模式只支持vi/vim的指令, 在敲键盘时只会滴滴响. 不知道有多少人被这种方式搞晕过(晕不晕由你,反正我是晕了.如果你没晕,恭喜你,那真是个奇迹)
ok~ 关于vi/vim的操作不打算在这里过多整理,能满足基本操作就行:
- 在默认的"指令模式"下按 i 进入编辑模式
- 在非指令模式下按 ESC 返回指令模式
- 在"指令模式"下输入:
:w保存当前文件
:q 退出编辑,如果文件为保存需要用强制模式
:q!强制退出不保存修改
:wq组合指令, 保存并退出 - 在"指令模式"下移动:
h左
j下
k上
l右
翻页
Shift + f(front)下一页
Shift + b(back)上一页
关于vi/vim整理到这里,知道上面这些基本可以避免我刚接触linux时的那些傻x问题
关于Vim need more?
简明VIM练级攻略 - http://coolshell.cn/articles/5426.html
在线教程+Web版VIM - http://www.openvim.com/index.html
Terminal基本指令
权限相关
sudo提升当前操作权限
passwd [username]修改用户密码, 一般用来激活root用户(管理员)
chown [target][user]修改制定目标的拥有者
chmod 755 [command]提高指定文件的执行权限
chown/chmod这两个指令没有深究过
查看/帮助
man[command]查看指令的帮助,一般使用vim打开txt帮助文件,按q退出(重点)
cat [file name]输出指定文件的内容
which [command]查看指令的位置: which ruby 这样可以检查环境
基本文件操作
ls -a [path]查看当前目录下所有文件, 包括隐藏文件
ls -l[path]查看文件的完整信息,包括拥有者,读写权限
rm -rf [path]删除文件夹
mv [source path] [target]移动文件/重命名
cp [source path] [target]复制文件
Terminal中实用工具
tail -f$CATALINA_HOME/logs/catalina.out查看tomcat日志
tree -L 3 .用树状结构查看目录, -L制定查看深度
grep 正则表达式工具,可以用来过滤结果
ls -a | grep .ba可以找到包含ba的隐藏文件, 有时候用来找 .bash_profile文件
svn st | grep ^?查看当前办本库中未添加的文件
ping -c 3 10.2.1.18ping 3次指定目标,不指定次数会一直ping下去(这点和windows不一样)
Terminal操作技巧
Ctrl + a光标移动到行首
Ctrl + e......移动到行尾
Double Tab可以列出代选命令/代选文件
Ctrl + c强制推出当前操作
Mac OS 下
Command + K清屏
Command + T新建标签
Command + {}x向左/向右切换标签
mac os 使用iterm来代替自带Terminal
使~/.bash_profile立即生效的3中方式
1.. .bash_profile
2.source .bash_profile(用过这个方法)
- exec bash --login
进程操作:
ps -A | grep [process name regex] : 查看制定进程,
e.g: ps -A | grep eclipse 查看eclipse进程
kill [PID] : 强制kill掉制定进程
sudo lsof -i -P | grep 9092
查看指定端口的PID, 非常有用
update[2014-03-17]:
lsof -i:8080
这个速度更快
SSH操作:
ssh lvjian@192.168.1.6 #server端需要架设OpenSSH服务器
scp ./lib/*.jar lvjian@192.168.1.6:jeespace/biandan/war/WEB-INF/lib #向SSH Server远程copy文件
文本操作:
替换war下, 所有jsp页面的<title>:
Java代码 收藏代码
find war/ -name '.jsp' |xargs perl -pi -e 's/<title\>\w<\/title>/<title\>大洋收录平台<\/title>/g'