Linux常用操作命令(设计文件编辑!!!)

如何在centos的虚拟机上输入汉字

左上角应用程序->设置->区域和语言->选择下方的“+”然后选择汉字即可

关机:poweroff

目录操作命令

目录操作

创建目录

mkdir 目录

mkdir xxxx 在当前目录下创建一个名为xxxx的目录

mkdir a/aaa 在当前目录的子目录a下创建一个名为aaa的目录

显示目录文件

显示目录文件

命令格式:ls [-atFlgR][name](name 可为文件或目录名称)

例: ls 显示出当前目录下的文件

ls -a 显示出的所有文件(包含隐藏文件)

ls -t 按照文件最后修改时间显示文件

ls -F 显示出当前目录下的文件及其类型

ls -l 显示目录下所有文件的许可权、拥有者、文件大小、修改

时间及名称

ls -lg 同上

ls -R 显示出该目录及其子目录下的文件

查看目录大小

命令格式: du [-s] directory

例:du dir1 //显示目录 dir1 及其子目录容量(以 kb 为单位)

du –s dir1 //显示目录 dir1 的总容量

删除目录或者文件

rm [-rf] 目录

删除文件:

rm aaa.txt 删除名为aaa的txt文件(要表明后缀)

rm -f aaa.txt 删除名为aaa的txt文件(不询问)

删除目录:

rm -r aaa 递归删除当前目录下的aaa目录

rm -rf aaa 递归删除当前目录下的aaa目录(不询问)

全部删除

rm -rf * 删除当前目录下的所有文件和目录

[慎用慎用慎用慎用!!!!这就是一个神风敢死队!真香!]

目录修改

一、重命名目录
命令:mv 当前目录 新目录
例如:mv aaa bbb 将目录aaa改为bbb
注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作

二、剪切目录
命令:mv 目录名称 目录的新位置
示例:将/usr/tmp目录下的aaa目录剪切到 /usr目录下面 mv /usr/tmp/aaa /usr
注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作

三、拷贝目录
命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归
示例:将/usr/tmp目录下的aaa目录复制到 /usr目录下面 cp /usr/tmp/aaa /usr
注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归

搜索目录

命令:find 目录 参数 文件名称
示例:find /usr/tmp -name ‘a*’ 查找/usr/tmp目录下的所有以a开头的目录或文件

可以与显示路径命令pwd命令进行结合使用

目录切换

cd 命令

cd ~ 切换到Home目录

cd … 切换到上一级目录(cd …/)

cd - 回到进入当前目录前的父目录

cd / 切换到根目录(这里的根目录指的是最根部的磁盘)

和 DOS 相似,Linux 采用树形目录管理结构,由根目录(/)开始一层一层

地将子目录建构下去,各子目录以/个隔开。用户登陆(login)后,工作目录的

位置称为“home directory”,由系统管理员设定。‘~’符号代表自己的“home

directory”,例如:“~/myfile”是指自己 home 目录下 myfile 这个文件。

显示当前路径

pwd 查看当前所处的目录的路径

文件操作命令

1.文件操作

新建文件

命令:touch 文件名(有后缀)

ù实例: 在当前目录下创建一个名为xxx.txt 的文件 touch xxx.txt

删除文件

命令:rm 文件

rm aaa.txt 删除当前目录下一个名为aaa.txt的文件

修改文件

命令 vi或者vim 文件名

【vi编辑器的3种模式】
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  1. 命令行模式command mode)

    控制屏幕光标的移动,字符、字或行的删除,查找,移动复制某区段及进入Insert mode下,或者到 last line mode。
    命令行模式下的常用命令:

    【1】控制光标移动:hjkl;(向左移10位,输入10h即可)

    【2】删除当前行:dd

    【3】删除当前的字符:x

    【4】删除多个命令:d命令
      首先:在命令模式下按键一下会产生如下含义(motion命令)
    
    按键 含义
    0 将光标定位在行首的位置
    ^ 同上
    $ 将光标定位在行尾的位置
    b 将光标定位到光标所在单词的起始处(区别单词?是符号和空格)
    e 将光标定位到光标所在单词的结尾处
    w 将光标定位到下一个单词的起始处
    gg 将光标定位到文件的开头
    G 将光标定位到文件的末尾

    删除命令(也是在命令行模式下进行)

    按键 含义
    d0 删除光标从当前位置(不包含光标所指的字符)到该行行首的所有字符
    d^ 同上
    d$ 删除从光标当前位置(包含光标所指的字符)到该行行尾的所有字符
    db 删除从光标当前位置(不包含)到单词起始处的所有字符
    de 删除从光标当前位置(包含)到单词结尾处的所有字符
    dw 删除从光标当前位置(包含)到下一个单词起始处的所有字符
    dh 删除光标前一个字符
    dl 删除光标后一个字符
    dj 删除光标所在行以及下一行的所有字符
    dk 删除光标所在行以及上行的所有字符
    dd 删除光标所在行的字符
    dgg 删除光标所在行带文件开头的所有字符
    dG 删除光标所在行到文件末尾的所有字符

    d+[数字]+motion命令实现连续操作(一步到位,一劳永逸,一干二净dd~)

    【5】查找:/字符

    【6】撤回:

    u 撤销最后一次修改
    U 撤销最后一次对行的修改

    注意:这里说的删除并不是真正意义上的删除,这些数据实际存放在VIM的一个缓冲区里,相当于win的剪切功能

    【7】复制:

     y+[数字]+(motion命令)
    

    【8】替换命令:

    r命令用于替换光标所在的字符,做法是先将光标移动到需要替换的字符处,按一下r键,然后输入新的字符

    在输入r键之前输入数字,表示从光标处开始,将多个字符同意替换为新字符(相同的一个字符)

    【9】替换模式

    R命令让你一步到位进入替换模式

    【10】修改命令

    注意:修改模式不是替换!修改会进入插入模式,但替换不会进入插入模式

    c+[数字]+motion命令

    按键 含义
    c0 删除光标从当前位置(不包含光标所指的字符)到该行行首的所有字符**,并进入插入模式**
    c^ 同上
    c$ 删除从光标当前位置(包含光标所指的字符)到该行行尾的所有字符**,并进入插入模式**
    cb 删除从光标当前位置(不包含)到单词起始处的所有字符**,并进入插入模式**
    ce 删除从光标当前位置(包含)到单词结尾处的所有字符**,并进入插入模式**
    cw 删除从光标当前位置(包含)到下一个单词起始处的所有字符**,并进入插入模式**
    ch 删除光标前一个字符**,并进入插入模式**
    cl 删除光标后一个字符**,并进入插入模式**
    cj 删除光标所在行以及下一行的所有字符**,并进入插入模式**
    ck 删除光标所在行以及上行的所有字符**,并进入插入模式**
    cc 删除光标所在行的字符**,并进入插入模式**

    【11】粘贴命令 p将最后一次删除的内容粘贴到光标之后(P就是粘贴到光标之前

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Lm9oz7p6-1631542346979)(C:\Users\86183\AppData\Roaming\Typora\typora-user-images\image-20210911184122025.png)]

    【12】进入编辑模式:

    i 在光标前面进入插入模式
    I 在光标所在行的行首进入插入模式
    a 在光标的后面进入插入模式
    A 在光标所在行的行尾进入插入模式
    o 在光标所在行的下方插入空行并进入插入模式
    O 在光标所在行的上方插入空行并进入插入模式
    s 删除光标指定的字符并进入插入模式
    S 将光标所在行清除并进入插入模式

    【5】进入底行模式::

  1. 编辑模式(Insert mode)
    只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
    编辑模式下常用命令:
    【1】ESC 退出编辑模式到命令行模式;

  2. 底行模式(last line mode)
    将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
    底行模式下常用命令:
    【1】退出编辑: :q
    【2】强制退出: :q!
    【3】保存并退出: :wq

2.文件信息

ctrl+g查看文件信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RBOcnlSn-1631542346980)(C:\Users\86183\AppData\Roaming\Typora\typora-user-images\image-20210913210127288.png)]

在命令行模式下按ctrl+g可以看到左下角有一个信息,27行指文件有27行,3%说明光标在文件3%的一个位置上

文件跳转

1.[数字]+G

从前面的内容我们可以知道,只按G,光标会跳转到文件末尾,而这里的数字就是行数

2.先:进入底层模式,然后输入行号就可以

定位括号(在虚拟机上直接编写代码很是需要)

按%键快速找到另一半括号

缩进

缩进>>

反缩进>>

在命令行模式按v进入可视模式然后hjkl可以选择多个字符(多选)

搜索命令(会被高亮显示)

/目标 ?目标
搜索方向 从光标开始向后
n 向后搜索下一个 向前搜索下一个
N 向前搜索下一个 向后搜索下一个

搜索后产生高亮不好看怎么办?

:进入底行模式,输入nohl接触高亮

特殊字符搜索得到的结果会被全部高亮(没啥作用)

比如说/.会全部高亮显示文本,怎么办?/.就可以了

.、*、[、]、^、%、/、?、~、$

替换

搜索处新字符,有一个目的就是替换这个字符

方式:

:进入底行模式

输入:

  • s/原字符/新修改的字符 这样得到的替换结果是替换光标所在行行的第一处字符

  • s/原字符/新修改的字符/g 这样的到的替换结果是光标所在行的全部原字符

  • %s/原字符/新修改的字符/g 按文件里所有需要替换的字符替换掉

  • 智能替换方法:
    %s/原字符/新修改的字符/gc

这里会出现这种命令:

replace with 0 (y/n/a/q/l/^E/^Y)?

这里光标会停在文件里需要替换的第一个字符处

这里需要你再次输入括号里的数

y:需要替换该字符

n:光标跳过该字符

a:替换所有

q:放弃替换(直接退出)

l:替换第一个并进入插入模式

^E:滚动屏幕

^Y:滚动屏幕

从某行到某行的替换

cow,cows/原字符/新修改的字符/g

执行shell

文本编译的时候就可以看到文件目录

:进入底行模式

:!ls 路径

此方式对于其他的shell命令都是适用的。

文件另存为

:w 文件名

在当前目录下再次另存文件

另存局部文件

先按v进入可视模式

然后按:后面自动出现’<,’> 这个不用管

直接w 新文件名

合并文件

:r 文件名

同时打开多个文件

-o水平并排

-O竖直并排

如何切换光标?

用ctrl+w+w将光标切换到下一个文件

对于垂直并排的文件:使用ctrl+w+上、下方向表示切换到上下文件

对于水平并排的文件:使用ctrl+w+左右方向表示切换到左右文件

如何一步直接退出,在qa!不保存退出

wqa保存并退出

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B7V9ITim-1631542346982)(C:\Users\86183\AppData\Roaming\Typora\typora-user-images\image-20210911153922868.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G3fMxwR5-1631542346984)(C:\Users\86183\AppData\Roaming\Typora\typora-user-images\image-20210911154012324.png)]

对于其他的shell命令都是适用的。

文件另存为

:w 文件名

在当前目录下再次另存文件

另存局部文件

先按v进入可视模式

然后按:后面自动出现’<,’> 这个不用管

直接w 新文件名

合并文件

:r 文件名

同时打开多个文件

-o水平并排

-O竖直并排

如何切换光标?

用ctrl+w+w将光标切换到下一个文件

对于垂直并排的文件:使用ctrl+w+上、下方向表示切换到上下文件

对于水平并排的文件:使用ctrl+w+左右方向表示切换到左右文件

如何一步直接退出,在qa!不保存退出

wqa保存并退出

[外链图片转存中…(img-B7V9ITim-1631542346982)]

[外链图片转存中…(img-G3fMxwR5-1631542346984)]

おすすめ

転載: blog.csdn.net/weixin_54438368/article/details/120276838