Linux命令行和Shell高效率使用方法
Ctrl+R快速搜索history
Ctrl+P显示上一条命令
快速执行一条history命令:!!/!-number
=========================================
快速进入某些目录
键入cd~可直接进入用户的home目录;
键入cd-可进入上一个目录。
export CDPATH=.:~:/etc:/usr/local
mkdir -p /***/***/***/
alias cd3="cd ../../../"
==========================================
一次运行多个命令
在一个命令行中还可以置入多个命令,用分号将各个命令隔开
$last;exit
$make && make install
==========================================
命令行下快捷键
Ctrl+a:把光标移到行首。
Ctrl+e:把光标移到行尾。
Ctrl+l:清除终端。该快捷操作与在命令行键入clear作用相同。
Ctrl+d:从Shell提示中注销并关闭,使用该快捷键就不必键入exit
Ctrl+u:删除光标至行首的所有字符,使用这一快捷操作可以清除从光标处到行首的字符
Ctrl+K:删除从光标到行末所有字符。
Ctrl+t:新建屏幕。
Alt+1到9:选择屏幕。
Ctrl + F :向前移动一个字符。
Ctrl + B :向后移动一个字符
Alt + F : 向前移动一个单词。
Alt + B : 向后移动一个单词。
==========================================
在文件里查找
grep -rlI '\<main' .
find -type f -name *.java -exec grep -l '\<main' {} \;
------------------------------------------------------------
快速的建立一个文件
cat >> filename ,输入一些内容然后按Ctrl-d结束输入。
----------------------------------------------------------------
将文本文件中DOS换行符号转化为UNIX的换行符号
tr -s "\r" "\n" <inputfile
tr -s "\r" "\n" <inputfile >outputfile
当然你使用vim编辑文件时,vim也提供文件转换功能
整个文件大小写转换
tr a-z A-Z < **.txt
tr A-Z a-z < **.txt
========================================
Shell 脚本
$0为程序名称,$1为第一个参数,$2为第二个参数,依次类推,直到$9为第九个参数。
特殊变量$#测试执行脚本时包含的命令行参数个数。
变量$*将命令行中提供的所有参数作为一个单词处理,它将多个参数看成 一个参数。
变量$@将命令行中提供的所有参数作为同一个字符串中的多个单词处理。
shift命令能够改变命令行参数的相对位置。默 认将每个参数变量左移一个位置
使用-t指定一个计时器,计时数满还未输入,read返回一个非0的退出状态。
使用-n指定输入的字符个数,输入达到预定数目时,就自动结束输入
使用-s使输入不显示在终端(例如输入密码)
shell 调试 set -xv
=====================================
dstat & sar
iostat, vmstat, ifstat 三合一的工具,用来查看系统性能。
官方网站:http://dag.wieers.com/rpm/packages/dstat/
你可以这样使用:
alias dstat='dstat -cdlmnpsy'
=====================================
vim 命令:
查找一个字符:fx
重复上次find: ;
重复执行上次:.
w 下一个单词开始字符
e 下一个单词结束字符
b 上一个单词开始字符
H M L 目前屏幕的第一行,中间行,最后一行
gg G 文件的第一行和最后一行
=============================
拷贝到指定寄存器:yt{标识符}
Ctrl + r{register}调出寄存器的值
分割窗口:split vsplit
超级自动补全:ctrl-N
转到一个变量定义的位置: gd(文件) gD(全局)
快速查询命令 :K 2K
匹配花括号:%
选取标志符的内容:va{ vit vi{
修改标示符的内容:ci{标识符}
删除标志符的内容:di"
删除指定行前的内容::10,20g/^$/d
===============================
Linux命令行和Shell高效率使用方法的更多相关文章
- Linux命令行和shell编程
Shell Shell是一个程序,用户输入的命令通过shell来传达给内核或其它程序.用户在linux打开一个终端,终端就会自动调用用户的shell. Linux上的Shell有很多种,用的最多是sh ...
- 如何在java程序中调用linux命令或者shell脚本
转自:http://blog.sina.com.cn/s/blog_6433391301019bpn.html 在java程序中如何调用linux的命令?如何调用shell脚本呢? 这里不得不提到ja ...
- Java执行cmd命令、bat脚本、linux命令,shell脚本等
1.Windows下执行cmd命令 如复制 D:\tmp\my.txt 到D:\tmp\my_by_only_cmd.txt 现文件如图示: 执行代码: private static void run ...
- 常用linux命令及shell脚本
参考:Linux命令大全 分割大文件 Split命令 按行分割(只能是文本文件) $split -l 1000 big_file 前缀 按文件大小分割 $split -b 64m big_file 前 ...
- Linux命令与Shell
Linux 目录结构及解释 查看命令行执行完位置: echo $BASH 命令记录 mkdir mkdir命令 用来创建目录. 语法:mkdir (选项)(参数) 主要选项: -m<目标属性& ...
- shell脚本中切换用户执行相应的命令或者shell脚本的方法
通常在执行自动化过程中可能需要将root用户切换到其他用户进行执行,如:oralce 但是,执行的命令又要回到root用户下,继续执行root用户下的其他命令. 此时需要了解 su 命令中的参数 -c ...
- linux命令(shell)
1.cat查看一个文件,linux默认bash 2.echo回显命令 3.ls 4.history历史记录,查看使用过的命令 5.根目录下文件目录 6.bin目录下内容多为应用程序和命令 7.boot ...
- Linux 命令、Shell 杂货铺
我看过一篇博客,是有关随手记录一些常用的命令的.感觉对自己比较有价值,不过其他人读起来就比较费劲了,毕竟没有什么主线.各取所需吧各位~ 1.CentOS 查看和修改系统时间和时区 date #查看系统 ...
- 用linux 命令 执行ci框架的方法
最近要跑一个数据量比较大的脚本,刚开始在浏览器页面访问发行nginx 5.4 超时, 又不想去修改nginx的连接时间,只能在服务器执行了, 执行方法:进入到ci 的根目录:#php index.ph ...
随机推荐
- Kibana安装及使用说明
Kibana安装及使用说明 Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索.查看交互存储在Elasticsearch索引中的数据. 官方地址:https://www. ...
- bzoj 1875: [SDOI2009]HH去散步 -- 矩阵乘法
1875: [SDOI2009]HH去散步 Time Limit: 20 Sec Memory Limit: 64 MB Description HH有个一成不变的习惯,喜欢饭后百步走.所谓百步走, ...
- python开发_csv(Comma Separated Values)_逗号分隔值_常用导入导出格式_完整版_博主推荐
## 最近出了一趟差,是从20号去的,今天回来...# 就把最近学习的python内容给大家分享一下...#''' 在python中,CSV(Comma Separated Values),从字面上面 ...
- centos7安装kafka_2.11-1.0.0 新手入门
系统环境 1.操作系统:64位CentOS Linux release 7.2.1511 (Core) 2.jdk版本:1.8.0_121 3.zookeeper版本:zookeeper-3.4.9. ...
- 怎么改变html中placeholderr的文字颜色
<input type="text" placeholder="这里是提示文本" /> 设置的css代码: ::-webkit-input-plac ...
- spring---aop(3)---Spring AOP的拦截器链
写在前面 时间断断续续,这次写一点关于spring aop拦截器链的记载.至于如何获取spring的拦截器,前一篇博客已经写的很清楚(spring---aop(2)---Spring AOP的JDK动 ...
- GCC 4.9.0 公布,提升 C++11 和 C++14 特性
from :http://www.oschina.net/news/51084/gcc-4-9-0 GCC 4.9.0 公布,此版本号是个主要版本号更新,包含了 GCC 4.8.x 系列和之前的 GC ...
- java hashcode()和equal()方法比较
通常equals,toString,hashCode,在应用中都会被复写,建立具体对象的特有的内容. 之所以有hashCode方法,是因为在批量的对象比较中,hashCode要比equals来得快,很 ...
- Java clone方法(下)
1.终于调用的是一个JNI方法,即java本地方法,加高速度 2.使用clone方法,分为浅复制.深复制,这里直接使用网上抄来的案例来说明吧: 说明: 1)为什么我们在派生类中覆盖Object的clo ...
- 《Windows核心编程》第八章——用户模式下的线程同步
下面起了两个线程,每个对一个全局变量加500次,不假思索进行回答,会认为最后这个全局变量的值会是1000,然而事实并不是这样: #include<iostream> #include &l ...