Linux学习笔记之超详细基础linux命令

by:授客
QQ1033553122

---------------------------------接Part
3------------------------------

别名

方法:alias
[别名=
'标准Shell命令']

功能:查看、设置别名。无参数的alias命令可以查看用户可使用的所有别名以及其对应的标准Shell命令,反之则设置别名

说明:用alias命令设置的用户别名命令,其有效期间仅持续到用户退出登录为止这段时间。如果希望别名命令在每次登录时都有效就应该将alias命令写

入用户主目录下的.bashrc

例子:查看当前用户可使用的别名

[laiyu@localhost ~]$
alias

alias l.='ls -d .*
--color=auto'

alias ll='ls -l
--color=auto'

alias ls='ls
--color=auto'

alias vi='vim'

alias which='alias |
/usr/bin/which --tty-only --read-alias --show-dot
--show-tilde'

说明:which和ls既是命令别名又是标准命令

说明:当别名命令和标准命令同时,别名命令优先于Shell命令执行,这种情况下,如果要执行标准的Shell命令,需要在命令名前添加“\”字符,即输入“\ls”命令将执行标准的Shell命令

例子:

[laiyu@localhost ~]$
\ls

Desktop   
Downloads 
etc  
file1 
file3 
Music    
Public    
Videos

Documents  err         
file 
file2 
list  
Pictures 
Templates

[laiyu@localhost ~]$
ls

Desktop   
Downloads 
etc  
file1 
file3 
Music    
Public    
Videos

Documents  err       
file 
file2 
list  
Pictures 
Templates

说明:\ls中显示的目录没有颜色,ls中显示的目录有颜色

例子:设置别名命令vi,其功能时在vi中打开file文件

[laiyu@localhost ~]$ alias
vi = 'vi file'

alias vi='vim'

bash: alias: =: not
found

bash: alias: vi file: not
found

[laiyu@localhost ~]$ alias
vi='vi file'

说明:“=”前后不能有空格

自动补全

方法:【Tab】键实现

功能:自动补全文件或目录名

例子:当前目录下有如下文件和子目录,要查看list文件的内容

[laiyu@localhost ~]$
ls

Desktop   
Downloads 
etc  
file1  file3  Music    
Public    
Videos

Documents  err       
file 
file2 
list  
Pictures 
Templates

[laiyu@localhost ~]$ cat
l

注意:不需要输入完整的命令“cat list”,只要输入“cat
l”,然后按【Tab】键。由于当前目录下以“l”开头的文件只有list文件,于是系统自动补

全为“cat
list”,按【Enter】键执行命令

例子:当前目录中文件和子目录信息如上例所示,查看err文件的信息

[laiyu@localhost ~]$ cat
e

err  etc/

[laiyu@localhost ~]$ cat
e

说明:当前目录中以e字母开头的文件有两个,要查看err文件的内容。输入”cat
e“命令,按【Tab】键,由于系统不能确定用户要查看的文件,因此命令行不发生改变。再按一次【Tab】键,系统将符合条件到文件全部显示出来供用户选择。

自动补全命令名

实现:【Tab】键实现。用户输入命令的开头字母,然后连续按两次【Tab】键,系统会列出符合条件到所有命令以供参考,用户输入剩余部分即可执行。

例:自动补全以”ca“开头的命令

用户输入开头字母“ca”,然后连续按两次【Tab】键,系统会列出符合条件到所有命令以供参考,用户输入剩余部分即可执行。

[laiyu@localhost ~]$
ca

cacertdir_rehash   
canberra-gtk-play  
cas

cal                
cancel             
cas-admin

caller             
cancel.cups        
case

callgrind_annotate 
capsh              
cat

callgrind_control  
captoinfo          
catchsegv

注:总结,就是说,按【Tab】键,能识别多少,自动补全多少

复制与黏贴

字符终端下

方法:vi、vim编辑文件,【Esc】进入命令行模式,

1)光标移动到要复制的内容区

2)复制整行,连续按两次yy

3)剪切整行,连续按两次dd

4)黏贴复制或剪切的内容,按小写【p】键,黏贴到光标所在行的下一行,按大写【P】键,黏贴到光标所在行的上一行

文本编辑器vi[rehl提供vim]

vi的工作模式

1.命令行模式

说明:启动vi后进入到工作模式。该模式下输入任何字符都被当作命令解释,不会在屏幕上显示

2.文本编辑模式

说明:在命令模式下输入i(insert),a(after)等命令后进入文本编辑模式。此时输入到任何字符都被vi当作文件内容显示在屏幕上。按【Esc】键从文本编辑模式返回到命令模式。

3.最后行模式

说明:在命令模式下,按【:】键进入最后行模式。此时vi会在屏幕的底部显示”:“符号作为最后行模式到提示符,等待用户输入命令。命令执行完毕后自动返回命令行模式。

启动vi

方法:vi
[文件]

功能:如果不指定文件,则新建一个文本文件,退出vi时必须指定文件。如果启动vi时指定文件,则新建或打开指定文件

例子:打开已有文件list

[laiyu@localhost ~]$ vi
list

说明:vi界面分为编辑区和状态区,命令区。状态区和命令区在最下面,用于输入命令或者显示当前正则编辑的文件的文件名称,状态,行数和字符数,结果显示~表示为空行

编辑文本文件

方法:在命令行模式下,输入i,I,o,O,a,A键中任意一个即可从从命令行模式转为编辑模式

说明:

i

从当前的光标位置开始输入字符串

I

光标移动到当前行的行首(第一个字符的位置),开始输入字符

a

从当前的光标的下一个位置,开始输入字符

A

光标移动到当前行的行尾(最后一个字符的后一位)

o

在光标所在行之下新增一行

O

在光标所在行之上新增一行

说明:在状态/命令区出现---INSERT---字样

查找字符串

方法:在命令行模式下,输入以下命令可以查找到指定的字符串

/字符串

按【/】键,在状态/命令区出现“/”字样,继续输入要查找的内容,按【Enter】键,vi将从光标的当前位置开始的文件向文件尾查找。如果找到,光标将停在该字符串的首字母

?字符串

按【?】键,状态/命令区出现“?”字样,继续输入要查找的内容,按【Enter】键,vi将从光标的当前位置开始向文件头查找,如果找到,光标将停留在该字符串的首字母

n

继续查找满足条件的字符串

N

改变查找方向,继续查找满足条件的字符串

撤销和重复

方法:在命令行模式下,输入以下命令可以撤销或重复编辑工作

u

按【u】键撤销上一步的操作

.


【.】键重复上一步的操作

命令行下的其它操作

dw

删除光标所在位置,及光标位置往后的所有字符,遇到空格或者.则停止往后删除

r

替换光标处的字符:光标移动到要修改的字符,然后按键[r],输入要替换的目标字符,该命令不会跳转到插入模式

w

使光标移动到下个单词的首字符,单词由空格分割,英文点也算一个单词,如果是最后一个单词,继续按w则停留在最后一个单词的末尾字符

b

使光标移动到当前光标所在单词的首字符,同w相反,它是反向移动的

0

零会使光标移动到光标当前所在行的行首,首字符

$

使光标移动到光标当前所在行的行尾,尾字符

G

键入大写的G,使得光标移动到文件最后一行

NG

键入数字,然后键入大写G,使得光标移动到指定行,如10G,移动到第十行

Ctrl+G
统计光标所在位置的行数和列数报告

Ctrl+f 
使得光标往前移动一屏幕的内容(编辑文件内容较多的时候用)

Ctrl+b 
使得光标往后移动一屏幕的内容(编辑文件内容较多的时候用)

Ctrl+u 
向文件首翻半屏

Ctrl+d 
向文件尾翻半屏 

文本块操作

在最后行模式下对多行文本进行复制,移动,删除和字符串替换等操作

方法:

:set nu

每一行前出现行号

:set nonu

不显示行号

说明:这里仅是显示,保存后cat命令查看,是看不到行号的

:n1,n2 co n3

将第n1行到第n2行之间(包括n1,n2行本身)的所有文本复制到第n3行下

:n1,n2 m n3

将第n1到第n2行之间(包括n1,n2行本身)的所有文本移动到n3之下

:n1,n2 d

删除第n1到第n2行之间(包括第n1,n2行本身)

说明:行号从1开始算起的

:n1,n2
s/字符串1/字符串2/g

将第n1行到第n2行之间所有用到字符串1的地方用字符串2替换

:% s/字符串1/字符串2/g

文件中所有用到字符串1的地方用字符串2替换

Linux 学习笔记之超详细基础linux命令 Part 4的更多相关文章

  1. Linux 学习笔记之超详细基础linux命令(the end)

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 14---------------- ...

  2. Linux 学习笔记之超详细基础linux命令 Part 14

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 13---------------- ...

  3. Linux 学习笔记之超详细基础linux命令 Part 13

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 12---------------- ...

  4. Linux 学习笔记之超详细基础linux命令 Part 12

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 11---------------- ...

  5. Linux 学习笔记之超详细基础linux命令 Part 11

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 10---------------- ...

  6. Linux 学习笔记之超详细基础linux命令 Part 10

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 9----------------- ...

  7. Linux 学习笔记之超详细基础linux命令 Part 9

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 8----------------- ...

  8. Linux 学习笔记之超详细基础linux命令 Part 8

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 7----------------- ...

  9. Linux 学习笔记之超详细基础linux命令 Part 7

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 6----------------- ...

  10. Linux 学习笔记之超详细基础linux命令 Part 6

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 5----------------- ...

随机推荐

  1. 锚接口(下)——html5的history api

    概述 虽然html5的history api是H5专门用来解决记录历史记录和单页面的方法,但是很多老式的浏览器并不支持它,所以一般遇到老式的浏览器会做一个polyfill使用之前的hashchange ...

  2. input可以自动换行吗???

    某天,在项目开发的时候,后台java问我input可以换行吗,当时我也是有点懵逼,思考了几秒钟说应该可以,然后就开始尝试各种方法.然后,然后就打脸了.... 最后发现,原来input没有自动换行功能, ...

  3. OO第一单元自白

    Homework 1  简单多项式导函数 对于初次接触的OO,第一次作业已经可以体会到其与面向过程的C语言之间的差别. 我的想法是,建立了Multinomial和Monomial 两个类,分别能够实现 ...

  4. Info - 信息获取途径汇总

    目的驱动 大多数情况下,都是为了解决某个问题或完成某项任务,才需要进行针对性的.大范围的.细致化的信息获取. 那么,信息获取的方式和来源,就应该紧紧围绕这个"问题和任务"本身来确定 ...

  5. vue 自学笔记(1)

    从to do list  开始  一: 安装  1: 导入cdn <script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js& ...

  6. 微软2014校招笔试题-String reorder

    Time Limit:10000ms Case Time Limit:1000ms Memory Limit:256MB Description For this question, your pro ...

  7. Hexo的next主题安装

    通过Git+Hexo搭建的个人博客地址:https://liangh.top/ 1.使用git克隆最新版本 2.先在themes目录创建一个next文件夹,然后在hexo站点目录下右键打开Git Ba ...

  8. tf.cast()的用法(转)

    一.函数 tf.cast() cast( x, dtype, name=None ) 将x的数据格式转化成dtype.例如,原来x的数据格式是bool, 那么将其转化成float以后,就能够将其转化成 ...

  9. 如何在IDEA里给大数据项目导入该项目的相关源码(博主推荐)(类似eclipse里同一个workspace下单个子项目存在)(图文详解)

    不多说,直接上干货! 如果在一个界面里,可以是单个项目 注意:本文是以gradle项目的方式来做的! 如何在IDEA里正确导入从Github上下载的Gradle项目(含相关源码)(博主推荐)(图文详解 ...

  10. 从零开始学 Web 之 Ajax(三)Ajax 概述,快速上手

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...