修改文件  vi

vi 是linux自带的,vim是vi的升级版

命令:vi 文件名

如果文件存在,那么就直接进入对应的文件的编译模式,如果文件不存在,那么就进入以文件名命名的空文件的编译模式

vi 文件有两张模式:

命令模式:在编辑模式下点击ESC可进入命令模式

编辑模式:只有在该模式的时候才能进入内容的输入操作等,在页面左下角显示INSERT的时候就代表当前是编辑模式

【命令模式】

001 在命令模式下,想要进入编辑模式,操作 i 或者 o 或者a 均可

区别是:i 为切换成编辑模式的基础上可在当前光标的位置继续进行编辑

o 为切换成编辑模式的基础上,在当前光标的下一行进行内容的编辑输入

a 光标当前所在位置的下一个字符位置进入编辑模式

002 命令模式下操作内容的删除,按键为:X,可删除单个字符

003 命令模式下操作删除内容的撤销按键:U

004 命令模式下操作删除整行:dd

005 命令模式下操作多行的删除:行数+dd

006 命令模式下操作整行的粘贴:yy 复制:p

007 命令模式下进行多行复制:行数+yy  为粘贴当前光标位置的下面的内容的行数内容;随后 p 为复制

008 命令模式下操作显示当前文件的行号

在命令模式下,输入   :set nu

009 文件内容过长,光标快速到文件的最后一行的位置,为按键,大写的G

010 文件内容过长,操作光标快速的到固定行的位置,输入   :行号   比如输入“:3”就是到当前文件的第三行

011 操作光标迅速的到文件的首行位置 gg

012 操作光标快速的到行尾:shift+4

013操作光标快速的到行首:shift+6

014 只有在命令模式下才可进行文件的退出

只是查看了文件,未作修改进行退出---:q

修改完毕,操作保存退出---:wq 或者 :x

修改文件修改错了,那不保存进行退出---:q!

015 在命令模式下操作文件内容关键字的查找

:/关键字    在此基础上,可点击字母:n 进行关键字的上/下一个的查看--光标默认查看顺序为从前至后

?关键字     在此基础上,可进行关键字的输入查看,点击字母 n 为进行上一个下一个的查看--光标默认顺序为从后到前

016 vi模式下进行文件内容的替换

:%s/要替换的字符串/替换的新内容/g    指定内容进行替换即可,无论光标在哪里,文件里面指定的字符都会被替换

:s/想要替换的内容/新内容/g      只能替换当前光标行指定内容

017 场景:文件里面有类似这样的格式:iA/b/b/bbbbbc  里面有“/”;操作内容的替换

:%s/b/B/g----这是标准的格式,但是文件内容是用“/分隔的”

:%s/\/b/B/g   ----这是文件内容里面有斜杠的内容替换

018 查看文件里面的内容

cat 文件名    #文件内容少的时候

more 文件名   #当文件内容过多,使用该命令可进行文件内容的分屏显示查看

019 当文件内容过长,查看文件前十行

head 文件名/文件路径

head -n 1 文件名字/文件路径   #n后面跟的是指定的想要看的文件内容的行数

020 查看历史命令输入有哪些

history     #查看历史命令有哪些

history |grep 历史命令里面的某个关键字   #可进行历史命令的关键字过滤

021 查看文件的末尾N行

tail -n 2  file-name   #n后面是想要查看的末尾的行数

022 查看日志的时候动态的查看访问的参数

tail -f file_name   #动态查看log

tail -20f file_name   #动态查看最后的20条

tail -f file_name  |grep 关键字   #操作动态查看的时候进行关键字的特定查看,结果为只输出带有关键字的log信息

tail -f file_name |grep 关键字 --color  #查找某个关键字的信息,并且关键字带有颜色

023 退出

control + c

024 排除关于某些关键字的信息

cat file_name |grep -v 关键字   #输出为不包含关键字的信息

025 显示当前环境变量

env

026 命令一般都存放在bin目录下

【关于 alias】

001 在当前页面进行对命令的负值

alias xiaohei=ls    #在当前页面命令 ls 相当于xiaohei,即xiaohei取代了ls命令;但是只在当前页面生效,关闭之后就不再生效

002 那如果命令负值想永远生效,怎么做呢?需要添加命令到环境变量

在家目录下查找文件:ls -a;找到设置本地环境变量的文件 .bash_profile

把alias 设置的对应的替代命令添加进去在PATH位置下方,alias添加格式类似【alias  source="source  ~/.bash_profile"】??注意多条变量加入的时候是进行逐列添加

随后操作  source .bash_profile    生效一下

【设置系统的环境变量】

step01

一般以a.sh结尾的都是shell脚本,也就是一堆linux命令的集合

echo相当于代码当中的print

理解场景:比如在当前路径:/opt/nhy路径下,在该路径下当前操作vi a.sh,进入编辑模式,进行内容编辑:

echo "hello"

ls

pwd

随后保存退出,运行脚本a.sh;命令为:sh+脚本文件名称;运行结果为:01 输出hello;02 ls查看当前目录下有哪些内容;03 pwd输出当前的路径

step02

step01 的操作的结果除上述之外,且文件的执行只能在/opt/nhy的路径基础上,在别的目录下是执行不了的,除非写绝对路径;那么如何在环境变量里面设置该文件的添加,以致在任何一个路径 下操作运行a.sh都可以呢

step03

那么就需要在环境变量里面进行添加该文件,操作环境变量配置文件的修改(/etc目录用于存放Linux/Unix系统的配置文件):vi /etc/profile

step04

找到文件的最下面:PATH,(PATH里面包含了所有的环境变量设置的命令),操作在PATH的最后进入编辑模式,连接【:/opt/nhy】,这里连接的是目录,不包含文件名字:a.sh

假如在进行设置环境变量进入etc/profile的时候没有发现PATH变量,??注意不要直接在下面自己写入PATH=/opt/nhy这样的信息,这是因为linux环境下有内置好的PATH值,而此刻如果一旦自己手动再次写入,那么就会导致所有的命令都用不了,正确的做法是:手动写入【PATH=$PATH:/opt/nhy】即可,此处$PATH意为在原来内置PATH值的基础上进行添加

step05

操作使文件生效的两种方法:

第一种:【source  /etc/profile】  操作对系统的环境变量的更新,使所有用户都可以使用

第二种:重新打开当前窗口

即生效

【设置在自己的家目录下操作添加环境变量】

在家目录下查找python

然后进入之后进行环境变量文件的新建设置

查看家目录下的所有文件:ls -a

然后进行编辑家目录下环境变量设置文件:vi .bash_profile

找到PATH,在最后的bin后面添加【:~/文件名字】保存退出即可

执行   source .bash_profile 更新一下

验证:在任何目录下操作输入添加环境变量的文件名称,验证通过即可

【当系统的环境变量和用户自己的环境变量同时设置,自己的环境变量要优先系统的变量优先级】

Linux引出环境变量的关键字,学习记录008-linux常用命令/设置系统and用户环境变量two(示例代码)...相关推荐

  1. Linux学习记录 Day1(常用命令)

    文章目录 Day 1 Linux简介 打开终端页面 Shell简介 在Shell中执行命令 命令行提示符 用户登录 命令帮助 文件操作 目录分析 文件与目录操作 重定向 输出重定向 管道 tee 用户 ...

  2. java的三个环境变量是啥_JAVA中常用需要设置的三个环境变量(JAVA_HOME、CLASSPATH、PATH)...

    JAVA中常用需要设置的三个环境变量: JAVA_HOME.CLASSPATH.PATH (一) 配置环境变量:(相对路径) 1. JAVA_HOME=x:/jdk1.6.0 2. 用%JAVA_HO ...

  3. Linux下通过命令设置系统时间

    Linux下通过命令设置系统时间: date -s "09/22/2012 09:30:30" clock -w

  4. Linux 学习记录之——Linux简介及Vmware 虚拟机下分区和centos6系统安装

    课程大纲: 一.UNIX 与Linux发展史: 1.比拟说,Unix是父亲,Linux是儿子. 2.Unix是六十年代中期,Linux80年代, Windows 90年代. 3.miutix 大而复杂 ...

  5. 嵌入式系统学习笔记之五-- uboot常用命令 环境变量

    uboot 中环境变量的作用就是在不改变源码.不用重新编译的情况下,可以使我们通过设置环境变量的值来改变 uboot 的一些设置.uboot 开机时会一次性从存储介质(启动介质)中读取全部的环境变量到 ...

  6. imx6 linux编译,IMX6学习记录(3)-LINUX编译

    上面是我创建的群聊,欢迎新朋友的加入. 目录 1.获取官方kernel 2.编译内核 3.内核烧录 4.调整uboot 5.卡分区 1.获取官方kernel 地址:http://git.freesca ...

  7. Linux学习(3)-常用命令

    跟文件系统相关的命令 Linux的潜规则:一般而言,命令的命名方式是其单词的缩写 1.pwd = printing working directory:显示工作目录 pwd 2.cd = changi ...

  8. linux内核时钟工作原理,需要学习并了解Linux时钟的原理及其应用

    一.前言 时钟或者钟表(clock)是一种计时工具,每个人都至少有一块,可能在你的手机里,也可能佩戴在你的手腕上.如果Linux也是一个普通人的话,那么她的手腕上应该有十几块手表,包括:CLOCK_R ...

  9. Opencv+Python学习记录9:掩膜(掩码)的使用(内附详细代码)

    一,基本概念 OpenCV中的很多函数都会指定一个掩模,也被称为掩码,例如: 计算结果=cv2.add(参数1,参数2,掩模) 当使用掩模参数时,操作只会在掩模值为非空的像素点上执行,并将其他像素点的 ...

最新文章

  1. Rocksdb 的优秀代码(一) -- 工业级分桶算法实现分位数p50,p99,p9999
  2. 每日一皮:美丽的背后都妙不可言...
  3. java扑克发牌程序_Java多线程实现扑克牌发牌程序实例
  4. 0R电阻的12种妙用---摘自:俸禄的小三
  5. java多线程 修改优先级_Java多线程-线程的调度(优先级)
  6. 机器学习相关知识 大佬博客整理
  7. 使用zigbee的协议栈进行协调器路由器终端初始化
  8. 转载 Assert断言知识
  9. (day 09 - 递归)剑指 Offer 28. 对称的二叉树
  10. Android Studio 0.1 gradle home的问题
  11. 5.2g信道用哪个好_记工记账软件哪个比较实用?建筑工地用哪个记工记账软件好?...
  12. 数据结构c语言版严蔚敏第二版课后答案
  13. 与BB-8跨次元对话,三星Bixby亮相星球大战首映礼
  14. Flutter项目调用APP原声页面,使用iOS的Framework,安卓的aar,so文件
  15. HCNR200和HCNR201在电机驱动和电流回路中的应用
  16. 软硬件一体化超低时延加速方案落地金融,交易场景效果卓著
  17. 作为程序员,在挑选 iPad 时我在想什么?
  18. 图像处理随笔之峰值信噪比(peak signal to noise ratio)
  19. 使用Packer在Winodws VMware Workstation Pro上自动部署Windows Server 2016中文版
  20. 【小程序项目开发-- 京东商城】uni-app之商品列表页面 (下)

热门文章

  1. 当芯片教父遇上伊隆马斯克:自动驾驶路在何方
  2. 机器学习霸占高薪榜、区块链偃旗息鼓?2020 年软件工程师状况解读!
  3. 2020 年,Android 还有哪些新期待?
  4. 达摩院 2020 预测:感知智能的“天花板”和认知智能的“野望”
  5. 软件设计师的成长之路
  6. 废旧 Android 手机如何改造成 Linux 服务器?
  7. 软件核心研发迎来又一春!
  8. const 并不能加快 C 代码的运行速度?
  9. 评分 9.7!这本 Python 书彻底玩大了?程序员:满分!
  10. 如何在 FPGA 上实现双线性插值的计算?