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 ...
随机推荐
- 解决同伴收获&解决同伴问题补分博客
解决同伴问题 要求: 查看同组同学的课堂笔记,尝试解决同伴的问题,格式如下: 我的同组同学是XXXX学号XXXX同学 同组同学的问题是XXXX 我理解他的意思是XXXX 他的问题我有一个小建议是XXX ...
- 20162327WJH2016-2017-2《程序设计与数据结构》课程总结
20162327WJH2016-2017-2<程序设计与数据结构>课程总结 一.每周作业链接汇总 第一周作业:算法分析 第三周作业:查找与排序 第五周作业:有关栈的总结 第七周作业:树的有 ...
- Python知识(6)--numpy做矩阵运算
矩阵运算 论numpy中matrix 和 array的区别:http://blog.csdn.net/vincentlipan/article/details/20717163 matrix 和 ar ...
- Android 手机 无线 ADB
要用网络调试Android需要设备已经获取root权限 如果手机没有命令行工具,请先在手机端安装终端模拟器,然后在终端输入: $su #stop adbd #setprop service.adb.t ...
- 如何让两个div并排,并且div要看得见边框
<div style="float:left; width:100px; height:100px; border:2px solid #0000FF;"></d ...
- android之使用mvn构建创造项目步骤
转自:http://blog.csdn.net/luhuajcdd/article/details/8132386 手动的创建自己的android application 1.用android t ...
- TCP的三次握手与四次挥手(详解+动图)
背景描述 通过上一篇中网络模型中的IP层的介绍,我们知道网络层,可以实现两个主机之间的通信.但是这并不具体,因为,真正进行通信的实体是在主机中的进程,是一个主机中的一个进程与另外一个主机中的一个进程在 ...
- VMware+Windgb+Win7内核驱动调试
com1被占用了,需要用com2
- select点击option获取文本输入框的焦点事件
HTML文件: <select id="secOrderNum" style="margin-bottom:10px;width:90px;" data- ...
- jquery的each函数的用法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...