美文网首页
Linux专题命令

Linux专题命令

作者: 爱吃油果子 | 来源:发表于2019-11-30 13:43 被阅读0次

    一、 vi / vim 编辑器

    三种模式

    命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)
    记住输入命令时必须在英文模式下,否则输不动哦。


    三种模式

    1、命令模式(也称一般模式):

    用户刚刚启动 vi/vim filename,便进入了命令模式。
    i 切换到输入模式,以进行编辑文本。
    : 切换到底线命令模式,以在最底一行输入命令。
    命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

    • 移动光标的方法
      h 或 向左箭头键(←) 光标向左移动一个字符
      j 或 向下箭头键(↓) 光标向下移动一个字符
      k 或 向上箭头键(↑) 光标向上移动一个字符
      l 或 向右箭头键(→) 光标向右移动一个字符
      [Ctrl] + [f] 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
      [Ctrl] + [b] 屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
      [Ctrl] + [d] 屏幕『向下』移动半页
      [Ctrl] + [u] 屏幕『向上』移动半页
      G 移动到这个档案的最后一行(常用)(直接shift+g)
      nG 例如 20G 则会移动到第 20 行(配合 :set number)(输入20后再按shift+g)
      gg 移动到这个档案的第一行,相当于 1G 啊!(常用)(直接输入gg)
      n<Enter> 光标向下移动 n 行(常用),n 为数字,(跳转到第10行,需要输入冒号:10)
      n<space> 例如 20<space> 光标会向后面移动 20 个字符距离
      0 或功能键[Home] 这是数字『 0 』:移动到这一行的最前面字符处 (常用)
      $ 或功能键[End] 移动到这一行的最后面字符处(常用)
    • 搜索和替换
      /word 向光标之下寻找一个名称为 word 的字符串 (常用)
      ?word 向光标之上寻找一个字符串名称为 word 的字符串
      n 按下 n 后,会向下继续搜寻下一个查找结果字符串
      N 与 n 刚好相反,为『反向』进行前一个搜寻动作
      使用 /word 配合 n 及 N 是非常有帮助的!可以让你重复的找到一些你搜寻的关键词!
      :n1,n2s/word1/word2/g 在 100 到 200 行之间搜寻 word1 替换为 word2 为『:100,200s/word1/word2/g』(常用)
      :1,s/word1/word2/g 或 :%s/word1/word2/g 从第一行到最后一行寻找 word1 并替换为 word2 (常用) :1,s/word1/word2/gc 或 :%s/word1/word2/gc 在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)
    • 删除、复制与粘贴
      u 撤销(需先Esc退到命令模式)
      [Ctrl] + r 恢复撤销(需先Esc退到命令模式)
      x, X 在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
      nx n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。
      dd 删除游标所在的那一整行(常用)
      ndd n 为数字,删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)
      d$ 删除游标所在处,到该行的最后一个字符
      d0 那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符。

    2、输入模式(也称编辑模式):

    在命令模式下按下 i 就进入了输入模式,在左下角状态栏中会出现--INSERT--的字样,可以像编辑文本一样操作啦。
    r, R 进入取代模式(Replace mode),在左下角状态栏中会出现 --REPLACE--的字样。
    注意:
      r 只会取代光标所在的那一个字符一次,
      R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)
    ESC 退出输入模式,退回到命令模式。

    3、底线命令模式:

    在命令模式下按下:(英文冒号)就进入了底线命令模式,
    按ESC键可随时退出底线命令模式回到一般模式。

    • 指令行的储存、离开等指令
      :w 将编辑的数据写入硬盘档案中(常用)
      :w! 若文件属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还是跟你对该档案的档案权限有关哦!
      :q 离开 vi (常用)
      :q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
      注意:惊叹号 (!) 在 vi 当中常常具有『强制』的意思~
      :wq 储存后离开,若为 :wq! 则为强制储存后离开 (常用)
      ":x" 和 ":wq" 的区别如下:
      (1) :wq 写入文件并退出(存盘并退出 write and quite)。即使文件没有被修改也强制写入,并更新文件的修改时间。
      (2) :x 写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。
      ZZ 这是大写的 Z 喔!若档案没有更动,则不储存离开,若档案已经被更动过,则储存后离开!
      :w [filename] 将编辑的数据储存成另一个档案(类似另存新档)
      :r [filename] 在编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面
      :n1,n2 w [filename] 将 n1 到 n2 的内容储存成 filename 这个档案。
      :! command 暂时离开 vi 到指令行模式下执行 command 的显示结果!例如
      『:! ls /home』即可在 vi 当中察看 /home 底下以 ls 输出的档案信息!
    • vim 环境的变更
      :set number 或者:set nu 显示行号
      :set number 或者 :set nonu 取消行号。
    • 特别注意
      在 vi/vim 中,数字是很有意义的!数字通常代表重复做几次的意思!
      例如:删除 50 行,可以用 『50dd』 数字加在动作之前。
      例如:向下移动 20 行呢?那就『20j』或者是『20↓』即可。
    • 批量注释
      添加注释
      :起始行号,结束行号s/^/注释符/g(注意冒号)。
      取消注释
      :起始行号,结束行号s/^注释符//g(注意冒号)。
      例如:
      在 10 - 20 行添加 # 注释
      :10,20s/^/#/g
      在 10 - 20 行删除 # 注释
      :10,20s/#//g

    二、tmux

    tmux 进入
    当一页显示不完时会直接显示最后一页,需要翻页操作命令:
    ctrl + o 松开再按 [
    就可以使用翻页命令啦: ctrl + d / ctrl + u 和 ctrl + f / ctrl + b

    三、阿里云硬盘扩容

    执行下记得做好快照备份
    请先登录服务器内部,分别执行fdisk -l和df -h确认扩容是否生效:(操作前建议务必创建快照备份,以免引起数据丢失)
    1、扩容已生效
    fdisk容量大于df -h容量,此时可尝试参考链接执行命令扩容分区及文件系统即可

    apt-get update
    apt-get install -y cloud-guest-utils
    growpart /dev/vda 1
    resize2fs /dev/vda1  
    df -Th
    

    2、扩容不生效:fdisk容量和df -h一致。
    可能原因:由于您未选择在线扩容,或者由于某些原因在线扩容失败。此时需要您到ECS控制台手动重启服务器,再次登录确认。服务器内部重启无法生效,请注意到ECS控制台操作重启。

    四、华为云新增硬盘

    挂载后处理

    须知:
    MBR支持的磁盘最大容量为2 TB,GPT最大支持的磁盘容量为18 EB,当前数据盘支持的最大容量为32 TB,如果您需要使用大于2 TB的磁盘容量,分区形式请采用GPT。
    当磁盘已经投入使用后,此时切换磁盘分区形式时,磁盘上的原有数据将会清除,因此请在磁盘初始化时谨慎选择磁盘分区形式。
    

    五、虚拟机扩容

    参考

    先安装gparted,使用命令sudo apt-get install gparted
    安装成功后打开软件图形界面,选中分区一直拖到最右扩展就可以。
    一开始不能直接给sda5扩展,需要先给sda2扩展,然后才能给sda5扩展。
    猜测是相邻的原因,需要挨个交换。
    

    相关文章

      网友评论

          本文标题:Linux专题命令

          本文链接:https://www.haomeiwen.com/subject/ycjowctx.html