专栏首页授客的专栏Linux 学习笔记之超详细基础linux命令 Part 4

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

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

---------------------------------接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替换

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 安全测试 一次关于WEB的URL安全测试

    时间精力问题,对web安全这块也没咋深入研究,但因为某个小插曲,公司要求先做个简单的安全测试,主要是针对URL的测试。

    授客
  • Oracle 数据库存储结构

    Oracle数据库由物理和逻辑结构组成。物理结构由操作系统可见、可被操作的物理文件组成,好比存储数据的数据文件。逻辑结构主要由包含物理文件的表空间组成。

    授客
  • JQuery javascript实现父子页面相互调用

    如上图,在iframe子页面的<script>元素中,定义了taskStatus全局变量,如果希望在其父页面中获取该全局变量的值,则可在父页面的<script>...

    授客
  • Linux系列教程(六)——Linux常用命令之文件搜索命令

      前一篇博客我们讲解了Linux链接命令和权限管理命令, 通过 ln -s  链接名 表示创建软链接,不加-s表示创建硬链接;还有三个更改权限的命令,chmo...

    IT可乐
  • 第176天:页面优化

    从用户角度而言,优化能够让页面加载得更快、对用户的操作响应得更及时,能够给用户提供更为友好的体验。从服务商角度而言,优化能够减少页面请求数、或者减小请求所占带宽...

    半指温柔乐
  • Memcached反射放大DDoS攻击威胁分析

    2018年2月27日,多国CERT和多家网络和云运营商报告称,恶意攻击者正在使用不安全配置的Memcached服务器来借力放大DDoS攻击。 根据报告,Memc...

    安恒信息
  • 零基础使用Django2.0.1打造在线教育网站(三):Django基础知识回顾

    努力与运动兼备~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步!

    啃饼小白
  • ArrayList 和 LinkedList的执行效率比较

    一、概念:     一般我们都知道ArrayList* 由一个数组后推得到的 List。作为一个常规用途的对象容器使用,用于替换原先的 Vector。允许我们快...

    JMCui
  • 大佬 Python 对阵新秀 Julia,谁能问鼎机器学习和数据科学?

    关键时刻,第一时间送达! 【CSDN 编者按】在数据科学领域,你最常用的编程语言是哪种?对此,不同职业背景下的开发者答案各尽不同,一般来说,Python 和 R...

    企鹅号小编
  • SAP 自动编号维护SNRO

    在开发中经常会遇到生成编号的需求,SAP提供了自动编号工具,能根用户需求设定并自动生成一组唯一的编号

    用户5495712

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动