Linux学习总结(十)-文件复制及查看, 环境变量

一 文件复制及移动

1.命令 cp --------copy 的意思
格式 cp 选项 源文件 目标文件
a: 对于文件我们直接cp 文件 目标文件
假定我们在普通用户家目录下/home/lv
新建两个普通文件 touch 1.txt 2.txt
echo "sfsfsfsdf" >> 1.txt 随便写点数据进去
cp 1.txt 2.txt 此时会提示你是否覆盖,意思是,是否用
1.txt里面的内容替换2.txt里面的内容。这里启动了
了一个 -i 别名选项,用于同用户交互的安全选项。
which cp 会看到alias cp='cp -i'
cp 1.txt /media 把1.txt 复制到media目录下,如果media下没有同名文 件,直接复制,如果有会提示是否覆盖
b: -r 用来复制一个目录,同时会复制子目录及文件,是一个递归复制。是否覆盖原理同上。不带-r参数无法复制目录

    1. mv ----------move的意思
      格式 mv 选项 源文件 目标文件
      mv 就更简单了,内置别名-i 也是安全选项,其他参数用不到
      mv 除过搬移文件外,常用的是重命名功能,就是把文件在同一目录下挪动一下,比如我把一个python程序临时保存在了2.txt文件里,这时后我想要运行
      就可以 mv 2.txt 2.py 然后python 2.py 就可以

      二 文件查看

      查询五件套, cat more less head tail

    2. 我们用的最多的是cat ,可以直接跟文件名差看内容
      还有两个选项稍微留意下, -n 显示行号,-A显示所有东西出来,包括特殊字 符 ,cat我们经常会配合追加>> ,过滤grep 使用,例如可以:
      cat /etc/passwd |grep 'home' >> 2.txt 我们可以得到普通用户信息
    3. cat的 倒装命令tac 可以倒叙显示内容
    4. more 当问价内容很多页时,cat只显示最后一屏,这时后more可以登场了,ctrl b 往前翻页, ctrl f或者空格键往后翻页,到结尾自动退出。提前退出q
    5. less ,比more好的地方是,可以一直翻页看,想退出再退。
      less 还有查询功能,按下/,然后输入查询字符,按n键就可以依次向后查找,如果你按下?,输入字符,就是向前查找
    6. head 查询前10行,tail查询末10行,两个命令都可以带-n参数,显示前几行, 或后几行 可以写为head -n4 /etc/profile 也可以写为 head -4 /etc/profile
    7. tail -f 选项可以动态显示文件末10行,以后分析日志很有用。head没有该选项,可以开两个终端,验证一下。
      小结一下, 一般小范围查询用cat,要精缺查看前几行后几行用head,tail
      文件很大用less,动态显示用tail,配合管道更方便例如
      cat -n /etc/profiel |head -18 带行号显示前18行

      三 环境变量PATH

      如果一定要问环境变量是什么,我的知识储备还不够正面回答这个问题,那我先把百度百科拿过来,方便你看
      https://baike.baidu.com/item/%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F/1730949?fr=aladdin
      当然我还要举一个例子,说一下我的理解,如果你在windos下安装过python,那么你应该印象深刻,当我们在cmd下要启动python解释器时,必须把python.exe 这个文件路径加入到windos环境变量如图:
      Linux学习总结(十)-文件复制及查看, 环境变量
      否则你无法调用python,我不是让你立马回去装python,我只是想从这个操作中去理解,我们把一个应用程序的绝对路径放在了系统指定的位置,也就是系统指定给我们用的环境,然后建立了连接。
      我们回到linux 环境,进一步认识,为什么我们直接可以输入 ls cd find等等好多命令,计算机怎么找到这些命令的,从哪里找的, 就是从环境变量找的.
      echo $PATH 查看环境变量
      通常有五个 路径两个sbin 三个bin
      /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
      我们做一个小实验 理解下环境变量
      which ls 查看下ls位置, /usr/bin/ls
      cp /usr/bin/ls /tmp
      mv /tmp/ls ls1
      PATH=$PATH:/tmp/
      执行ls1 发现等价于ls,如果不添加环境变量, 提示找不到ls1,除非你带绝对路径 /tmp/ls1 才可以执行
      如果要让该环境变量永久生效,可以编辑/etc/profile 文件添加PATH=$PATH:/tmp/

posted @ 2018-05-21 22:29  妖星杉木  阅读(334)  评论(0编辑  收藏  举报