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


    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'

     

    说明:whichls既是命令别名又是标准命令

    说明:当别名命令和标准命令同时,别名命令优先于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】键,能识别多少,自动补全多少

     

    复制与黏贴

    字符终端下

    方法:vivim编辑文件,【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替换

  • 相关阅读:
    fishredux 大体流程
    flutter Container组件和Text组件
    vue 页面跳转以及传参
    mySql 查询当天、本周、最近7天、本月、最近30天的语句
    Flutter编译时下载依赖报错的解决方案
    计算属性和方法
    计算属性传参
    原生js发送请求
    MySQL数据库连接
    flask 蓝图
  • 原文地址:https://www.cnblogs.com/shouke/p/10158194.html
Copyright © 2020-2023  润新知