提升使用Linux效率的小操作

保存更新?

本文记录了个人在使用Linux时觉得好用的一些快捷方式/功能;

为那种知道了能提高效率,但是的不知道也并没有影响的操作。

历史命令

该操作用于快速查看已使用过的命令

history

  1. history:查看历史执行过的命令
  2. !num:重新执行history命令显示的第num行命令

快捷键

  1. ctrl + r,进入命令查找模式;
  2. 输入关键字查找曾经执行过的命令;
  3. 继续ctrl + r,匹配上一次相关命令;
  4. 匹配成功:
    • 回车:直接执行
    • ctrl + j:将命令赋值到shell中

VIM中的操作

vim中其实只需要知道esc进入命令模式;:wq退出并保存;i/o进入编辑模型编辑,上述三种操作就完全可以了

纪录一些个人常用的其他操作:

  • 剪切/复制/粘贴操作:

    • 剪切光标所在当前行:dd
    • 剪切从光标开始的n行:ndd
    • 复制光标所在当前行:yy
    • 复制从光标开始的n行:nyy
    • 将之前剪切/复制的行粘贴在光标行后:p
  • 撤销操作:u

上述操作在命令模式下执行

  • 关于行号:

    • 设置行号:set nu;取消行号显示:set nonu
    • 调到指定行:行数
  • 查找操作:
    • 从上至下查找字符:\字符串
    • 从下至上查找字符:?字符串
    • 输入查找指令后,n——查找下一个;N——查找上一个;
    • 支持正则表达式
    • 查找时高亮显示::set hlsearch;取消:noh
  • 替换指令
    • 替换光标所在行的第一个匹配内容::s/原内容/新内容
    • 替换光标所在行的所有匹配内容::s/原内容/新内容/g
    • 替换全文中所有匹配内容::%s/原内容/新内容/g

上述操作在末行模式下进行

  • 不退出vim临时执行shell命令::!command

scp 命令

Linux scp 命令用于 Linux 之间复制文件和目录

scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令

scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版

摘自:菜鸟教程:Linux scp 命令,更加详细内容也可参考该网站

我的用途主要是同一局域网间服务器数据的拷贝

  1. 正在操作服务器A,把服务器A的数据拷贝到服务器B

    # 命令格式:scp -r -P 22 服务器A的目录/文件 服务器B接受的用户名@服务器B的IP地址:放到服务器B的对应路径
    # -r:递归复制整个目录
    # -P port:指定数据传输用到的端口,即服务器B的端口号,若是22端口可不写 # 整合:把服务器A中的UseGpu文件夹中的所有数据拷贝到服务器B中,如下
    # 服务器A IP:port 10.12.11.48:10033
    # 服务器B IP:port 10.12.11.192:22
    (base) zcc@e0c362370fb8:~$ scp -r ./UseGPU/ zcc@10.12.11.192:/home/zcc/
    zcc@10.12.11.192's password: # 输入服务器B的密码
    workspace.xml 100% 3284 3.2KB/s 00:00
    modules.xml 100% 271 0.3KB/s 00:00
    misc.xml 100% 205 0.2KB/s 00:00
    profiles_settings.xml 100% 174 0.2KB/s 00:00
    UseGPU.iml 100% 458 0.5KB/s 00:00
    cifar-demo.py 100% 861 0.8KB/s 00:00
    occupy.sh 100% 718 0.7KB/s 00:00
    mnist.npz 100% 11MB 11.0MB/s 00:01
  2. 正在操作服务器A,把服务器B的数据拷贝到服务器A

    # 命令格式:scp -r -P 22 服务器B的用户名@服务器B的IP地址:服务器B需要传到A的文件/目录 服务器A放置的路径
    # -r:递归复制整个目录
    # -P port:指定数据传输用到的端口,即服务器B的端口号,若是22端口可不写 # 整合:把服务器B中的UseGpu文件夹中的所有数据拷贝到服务器A中,如下
    # 服务器A IP:port 10.12.11.48:10033
    # 服务器B IP:port 10.12.11.192:22
    (base) zcc@e0c362370fb8:~$ scp -r zcc@10.12.11.192:/home/zcc/UseGPU/ /home/zcc/
    zcc@10.12.11.192's password: # 输入服务器B的密码
    mnist.npz 100% 11MB 11.0MB/s 00:01
    cifar-demo.py 100% 861 0.8KB/s 00:00
    workspace.xml 100% 3284 3.2KB/s 00:00
    misc.xml 100% 205 0.2KB/s 00:00
    modules.xml 100% 271 0.3KB/s 00:00
    profiles_settings.xml 100% 174 0.2KB/s 00:00
    UseGPU.iml 100% 458 0.5KB/s 00:00
    occupy.sh 100% 718 0.7KB/s 00:00

提升使用Linux效率的小操作的更多相关文章

  1. linux 简单实用小操作

    mysql改密码 通过root以后,(root密码忘记就没法了) alter user username@'%' identified by 'password' 端口被占用 sudo fuser - ...

  2. fir.im Weekly - 17 个提升 iOS 开发效率的必备工具

    本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感.  iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如 ...

  3. 让linux好用起来--操作使用技巧

    让linux好用起来--操作使用技巧 1   概述 在一个初学者眼里,linux的 CLI 界面没有图形界面那样多彩和友好,会让人产生畏难心理,但是作为一个稍微进阶的linux玩家,自然会积累不少经验 ...

  4. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

  5. Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725

    Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓  O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...

  6. atitit.提升软件开发效率大的总结O5

    atitit.提升软件开发效率大的总结O5 #---平台化.组件化 1 #--cbb公用模块的建设 1 #---内部最佳流程方法跟实践的总结 2 #---内部知识体系的建设 2 #---问题Qa库的建 ...

  7. linux下的文本操作之 文本查找——grep

    摘要:你有没有这样的应用场景:调试一个程序,出现debug的提示信息,现在你需要定位是哪个文件包含了这个debug信息,也就是说,你需要在一个目录下的多个文件(可能包含子目录)中查找某个字符串的位置: ...

  8. 3)Linux程序设计入门--文件操作

    )Linux程序设计入门--文件操作 Linux下文件的操作 前言: 我们在这一节将要讨论linux下文件操作的各个函数. 文件的创建和读写 文件的各个属性 目录文件的操作 管道文件 .文件的创建和读 ...

  9. linux 内核的链表操作(好文不得不转)

    以下全部来自于http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html 无任何个人意见. 本文详细分析了 2.6.x 内 ...

随机推荐

  1. Redis的配置文件

  2. 浅析Is-a,Has-a与like-a

    在面向对象的设计领域里,有很多设计思路,主要有三种:is-a.has-a.like-a. 这三种在java的类.接口.抽象类中很多体现,下面简述一下其定义. 1.Is-a(继承关系) is-a,顾名思 ...

  3. Windows下安装Apollo时的几个常见问题

    今天在本地安装Apollo时遇到几个问题,觉得还是记录下来,希望能给有需要的朋友提供帮助. 安装的过程参考这篇教程,https://www.jianshu.com/p/6cf4b15ba82f.流程基 ...

  4. Activiti 学习(三)—— Activiti 流程启动并完成

    Activiti 流程启动 流程定义部署后,就可以通过工作流管理业务流程了,也就是说前文部署的出差申请流程可以使用了.针对该流程,启动一个流程表示发起一个新的出差申请单,这就相当于 java 类与 j ...

  5. docker部署rabbitmq集群

    docker版本:18.09.6 或以上 rabbitmq镜像版本:rabbitmq:3.9.5-management 一.拉镜像: docker pull rabbitmq:3.9.5-manage ...

  6. 1.Java 基础

    1. JDK 和 JRE 有什么区别? jdk:开发工具包,jre:java运行环境 jdk包含了jre和java开发环境,如编译java源码的编译器javac,还包含了许多java程序调试和分析的工 ...

  7. 2021ICPC网络赛第一场部分题解-The 2021 ICPC Asia Regionals Online Contest (I)

    写在前面 本来应该6题的,结果不知道哪个铸币发了H的clar,当即把我们的思路转向三维几何上.当时我们还在想这三维计算几何的正确率有点太高了还在感叹ICPC选手的含金量,直到赛后我才知道这H题的铸币出 ...

  8. Django学习day09随堂笔记

    每日测验 """ 今日考题: 1.choices参数的应用场景有哪些,如何获取该字段的值 2.django是什么模型的框架,简述MTV与MVC模型 3.多对多表关系有几种 ...

  9. 对象继承深入、call_apply、圣杯模式、构造函数和闭包,企业模块化

    一个实现加减乘除的插件:   原型其实是在构造函数之上的,构造函数变成实例化函数的时候才会有原型, 原型实际上是构造函数的一个属性 原型无非就是2个字:继承 原型中继承父类所有方法是很不合理的,因为没 ...

  10. Appium自动化测试时为什么要自己封装find方法

    官方的find_element方法不能很好地处理异常,所以自行封装,以智能化处理各种异常