linux使用技巧(shell/vi/screen)
1,Shell
bash > awk '{print {NF}}' file
此时想修改操作命令可参照下面快捷方式
ctrl a 光标移动到命令最前面
ctrl e 光标移动到命令最后面
ctrl f 光标向右移动一个字符
ctrl b 光标向左移动一个字符
alt b 光标向左移动一个单词
alt f 光标向右移动一个单词
ctrl u 从光标所在处开始删除字符,直到行首
ctrl k 从光标所在处开始删除字符,直到行尾
ctrl w 删除光标前的一个单词
ctrl y 恢复删除的字符
ctrl l 清屏
2,Vim
14G 移动到14行
上下两行合并(J)
删除当前字符到指定{?}字符之间内容
df{?}
dt{?}
cf{?}
ct{?}
多窗口(结合Ctrl+D查看目录文件)
:sp file2
:vsp file3
窗口间切换ctrl w [h|j|k|l] 或者 ctrl w w
窗口关闭:close 或 :q
多行编辑
添加注释:Ctrl+v 进入列编辑模式。向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I,再插入注释符,比如“#”,再连按Esc。就会全部注释了。
删除注释:同样 Ctrl+v 进入列选择模式,移到光标把注释符选中,按下d,OK了
撤销/恢复撤销
u
ctrl r
重复上一次操作(.)
在打开一个文件编辑后才知道登录的用户对该文件没有写权,不能存盘
vi file
:w /tmp/1 既然没法存盘,不想放弃所做的所有修改,先临时存到/tmp/1
:20,59w /tmp/1 或者仅仅把第20到59行之间的内容存盘成文件/tmp/1
用VI编辑一个文件,但需要删除大段大段的内容
vi file
Ctrl+G 把光标移到需要删除的行的处按ctrl+G显示行号,再到结尾处再按Ctrl+G.
:23,1045d 假定两次行号为23和1045,则把这几间的内容全删除
在当前屏幕中
H 跳到第一行
M 跳到中间一行
L 跳到最后一行
3,Screen
screen 创建多个screen,方便切换。具体命令:
screen
screen -S [screen-name]
ctrl a c:创建窗口;
ctrl a k:杀死某一个窗口;当当前窗口没有响应时,该命令超级有效;
ctrl a d: 取消screen模式,恢复成只1有个窗口状态; 窗口间的切换:
ctrl a Num:加数字,切换到第num个窗口;
ctrl a a: 两个窗口间相互切换;
ctrl a n: 后一个窗口
ctrl a p: 前一个窗口 screen -r //查看所有的screen,并且可以恢复detach的进程;
screen -d //并且可以恢复detach的进程; 点击(此处)折叠或打开
screen -r
There is a screen on:
14997.pts-0.dev-02 (Attached)
如screen -r 14997,其中14997为线程号:
用如下命令时,显示的第一列数字为其编号
ps aux | grep hma
hma 13708 0.0 0.0 4676 2084 pts/0 Ss 15:18 0:00 -bash
hma 14997 0.0 0.0 5148 3324 ? Ss 15:23 0:00 SCREEN
hma 14998 0.0 0.0 3428 1852 pts/3 Ss+ 15:23 0:00 bash
hma 15015 0.0 0.0 3436 1872 pts/4 Ss 15:23 0:00 bash
hma 15028 0.0 0.0 3428 1852 pts/5 Ss+ 15:23 0:00 bash
hma 15039 0.0 0.0 3428 1852 pts/6 Ss+ 15:24 0:00 bash
用screen -r可以恢复界面,与本地是否连接没有关系。即便本地的ssh断开了,也可以通过上述命令恢复工作界面。 窗口分割的功能:
水平分割 ctrl a 然后 S
垂直分割 ctrl a 然后 | (某些版本不支持)
切换窗口 ctrl a 然后 Tab
关闭分割 ctrl a 然后 Q
ctrl a " or ctrl a a
linux使用技巧(shell/vi/screen)的更多相关文章
- 20个 Unix/Linux 命令技巧
让我们用这些Unix/Linux命令技巧开启新的一年,提高在终端下的生产力.我已经找了很久了,现在就与你们分享. 删除一个大文件 我在生产服务器上有一个很大的200GB的日志文件需要删除.我的rm和l ...
- 10 个提升效率的Linux小技巧
您是否曾经惊讶于看到某人在 UNIX 中非常快速地工作,触发命令并快速地执行操作?是的,我碰到过几次,并且我一直都在向那些超级巨星开发者学习.在本文中,我想分享一些 UNIX 命令实践,这些实践是我在 ...
- Linux正则表达式、shell基础、文件查找及打包压缩
Linux正则表达式.shell基础.文件查找及打包压缩 一.正则表达式 Linux正则表达式分为2类: 1.基本正则表达式(BRE) 2.扩展正则表达式(ERE) 两者的区别: 1.使用扩展正则表达 ...
- linux 学习10 shell 基础
10.1 Shell概述 .Shell是什么 Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动.挂起.停止甚至是编写一 ...
- linux下的shell命令的编写,以及java怎样调用linux的shell命令(java怎样获取linux上的网卡的ip信息)
程序猿都非常懒,你懂的! 近期在开发中,须要用到server的ip和mac信息.可是server是架设在linux系统上的,对于多网口,在获取ip时就产生了非常大的问题.以下是在windows系统上, ...
- (原创)鸟哥linux学习script shell相关笔记
在使用鸟哥linux进行script shell学习的过程中碰到一些不太明白的知识点,在这里进行一些记录 1. [root@www scripts]# vi sh03.sh #!/bin/bash # ...
- linux基础之Shell Script入门介绍
本文介绍下,学习shell script编程的入门知识,通过几个入门实例,带领大家走进shell script的神圣殿堂,呵呵,有需要的朋友参考下. 本文转自:http://www.jbxue.com ...
- 10分钟 教你学会Linux/Unix下的vi文本编辑器
10分钟 教你学会Linux/Unix下的vi文本编辑器 vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结.不敢独享,和你们共享. 首先,记住v ...
- [转帖]50个必知的Linux命令技巧,你都掌握了吗?
50个必知的Linux命令技巧,你都掌握了吗? https://blog.51cto.com/lizhenliang/2131141 https://blog.51cto.com/lizhenlian ...
随机推荐
- Struts学习之类型转换
* 从页面中获取对应的内容 * 在动作类action中,声明与页面中表单name属性的值同名的属性 * 提供get和set方法 * struts2框架就会通过 ...
- 最近比较迷flash professional cc 做PPT,做一个flash做动态打字效果的教程
想做一个flash打字效果.网上的方法要不是太繁琐,要不然就是各种遗漏.在这边做一个行之有效的flash做打字效果教程. 首先我用的是最新版本的flash professional cc .但是应该和 ...
- 浏览器 HTTP 缓存原理分析
转自:http://www.cnblogs.com/tzyy/p/4908165.html 浏览器缓存原理: 1.浏览器第一次访问服务器资源/index.html,在浏览器中没有缓存文件,直接向服务器 ...
- jQuery数据缓存data(name, value)详解及实现
一. jQuery数据缓存的作用 jQuery数据缓存的作用在中文API中是这样描述的:“用于在一个元素上存取数据而避免了循环引用的风险”.如何理解这句话呢,看看我下面的举例,不知道合不合适,如果你有 ...
- Decorators and Wrappers in Python
python代码一贯以优雅,简洁著称,而有时侯反而会让人难以理解,比如说wrapper(或者说decorator),这种方式提高了代码的可重用性,使用起来更简洁方便. 举个例子,比如WebApp常用的 ...
- spring与hibernate整合配置基于Annotation注解方式管理实务
1.配置数据源 数据库连接基本信息存放到properties文件中,因此先加载properties文件 <!-- jdbc连接信息 --> <context:property-pla ...
- oracle 数据库数据迁移解决方案
大部分系统由于平台和版本的原因,做的是逻辑迁移,少部分做的是物理迁移,接下来把心得与大家分享一下 去年年底做了不少系统的数据迁移,大部分系统由于平台和版本的原因,做的是逻辑迁移,少部分做的是物理迁 ...
- Oracle ODI系列之一(ODI知识模块)
Oracle ODI系列之一(ODI知识模块) ODI简介 ODI(Oracle Data Integrator)前身是Sunopsis Active Integration Platform ...
- 阿里云ECS每天一件事D9:nginx1.7整合tomcat8.0
仅通过8080端口访问jsp显然不是一算是一个太好的方法,可以使用nginx的proxy_pass子模块,实现nginx转发jsp请求至tomcat. 典型的配置如下: server { listen ...
- Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)
一步步在Window下开发Qt 今天开始安装MySQL,看了些关于MySQL安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题. 1.首先下载, ...