linux文件常用操作

9月13日任务
2.10 环境变量PATH
2.11 cp命令
2.12 mv命令
2.13 文档查看cat/more/less/head/tail

文件操作

2018-9-8

环境变量PATH

大多数人有使用windows系统的经验,在安装软件时都会选择安装路径。其实linux软件安装也可以选择安装路径,自带软件则安装在几个规定好的目录里,比如/bin、/usr/bin、/sbin、/usr/sbin。我们在终端中输入命令启动软件,linux就会在记录的目录里找,如果所有记录的目录都找不到就会报告“-bash: ads: 未找到命令”。如果你没有输错命令,要么你还没安装该软件,要么这个软件的安装路径还没有被linux记录在册。

怎么告诉linux你自定义安装的软件目录呢?这就需要修改环境变量PATH。在终端中输入echo $PATH,系统就会反馈当前PATH包含的目录。

[root@centos ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

解释:

  • echo是标准输出命令,可以输出指定内容
  • PATH是系统规定的环境变量名,环境变量都用大写字母
  • echo命令调用环境变量时,需要在环境变量前加“$”
  • PATH环境变量又冒号分割

现在演示添加PATH。假设你下载了编译好的linux软件,把它放在/opt下面。终端输入命令:PATH=$PATH:/opt,然后在查看PATH变量就已经生效。这个命令只在当前shell有效,重启或者再开shell都会失效。如果想一直使用,可以编辑/etc/profile文件,在最后加入以上的命令。

如果查看/etc/profile文件,可能会看到export开头的环境变量声明形式。export的作用是声明该变量为全局变量。全局变量在子shell中仍生效。

常用文件操作

拷贝cp

各式cp A B,A为原文件,B为拷贝路径或者“路径/新文件名”。如果B是第二种情况,cp相当于完成了拷贝+重命名的作用。

如果A是一个目录,需要添加-r参数,否则不能拷贝。在拷贝目录A时,linux会自动识别A是不是目录。也就是说在目录结尾加不加“/”都行。不过建意养成良好的习惯,都加上。

此外,用which命令查看cp,会发现centos别名了cp命令,增加了-i参数。这是防止拷贝时覆盖了重名文件。如果不想看到安全提示,可以直接调用/usr/bin/cp或者/bin/cp

移动mv

mv命令可以移动目录,不需要加额外参数。各式mv A B,A为原文件,B为拷贝路径或者“路径/新文件名”。如果B是第二种情况,mv相当于完成了移动+重命名的作用。在linux下重命名可以通过mv命令实现。

用which命令查看mv,centos也添加了-i参数。

查看cat、more、less、head、tail

cat后加文件就可以在终端上看到文件的内容。比较常用的参数有A、n。A会显示文件全不内容,linux、windows、mac在文本文件中换行标志不一样,如果处理跨平台拷贝过来的文档需要小心。可以用-A先查看一下。-n参数在输出文档内容时会显示行号。

cat命令其实是用来拼接的,后面可以接多个文件或内容,它会拼接起来在终端标准输出。但是,如果只是想查看文档内容,cat有时不好用,比如内容太长。这时可以用more或者less命令。这两个命令都可以分屏显示文档内容,不同的是more下翻到底部自动退出,less不会。所以可以常用less。在less中空格、ctrl+f下翻页,ctrl+b上翻页,g到顶不,G到底部,/aaa向下查找“aaa”的字符,?aaa向上查找“aaa”的字符。

如果你只想看文档的头几行或者末尾几行,可以用head、tail命令。默认的,head file查看文件前10行,tail file查看文件末尾10行。你可以用-n指定想看的行数,例如head -n 5 file可以查看文档前5行。

在监控系统时常需要查看系统日志的末尾。我们可以使用tail -f来动态显示日志最后几行。

    原文作者:awsome365
    原文地址: https://www.jianshu.com/p/2755d5f694d3
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞