touch 命令

touch命令用于创建空文件,例如有时应用程序希望在它们写入数据之前,某个日志文件就已经存在。这时可用touch命令创建一个空文件:touch test1
touch命令还可以用来改变已有文件的访问时间和修改时间,而不改变文件内容,例如已存在test1文件,再次执行touch test1 时,文件的创建时间就会为当前时间,-t参数后跟时间戳则可以将文件的创建时间改成指定时间;

cp 命令

此命令用以复制文件或者目录,cp命令需要两个参数,源对象和目标对象,最基本的用法为:
cp source destination
sourcedestination都为文件时,新文件以destination命名,sourcedestination也都可为目录文件
着重介绍cp命令的几个常用参数:

  • -p:为目标文件保留源文件的访问时间和修改时间
  • -v:详细模式,解释复制过程中发生了什么(可用于shell程序日志记录)
  • -r:递归复制,用于复制目录时及其子目录
  • -b:创建备份,而不覆盖
  • -f:强制覆盖,无需询问

mv 命令

mv即为moving,用来将文件和目录移动到另外一个位置,基本用法为:
mv source destination
可用mv命令进行文件重命名,将destination改为新的名字就好

注意,移动一个有软连接指向的文件会使得软连接文件失效

rm命令

rm命令用于删除文件,在rm后跟文件或者目录名即可

  • -i:在删除文件前进行询问确认
  • -r:递归删除目录文件及其子目录
  • -f:强制性删除文件,不进行任何询问(例如删除拥有git仓库的文件)

    注意,因为rm命令不是将文件回收垃圾站,而是彻底消失,在执行rm -rf destination这个命令时务必小心谨慎,轻则几天的心血付之东流,重则你正在使用的系统全部被删干净
    本人借鉴网络上前辈的处理经验,附上删除至回收站代码(在.zshrc文件中添加)
    alias rmtrash=trash alias lltrash=‘ll /.Trash’ trash() { mv -v $@ /.Trash/ }
    这种情况下可以执行rmtrash命令代替rm命令,lltrash命令查看垃圾箱中的文件

mkdir 命令

创建目录命令,-p参数用于递归创建

file 命令

查看文件类型命令
File命令将文件分成3类

  • 文本文件:包含可打印字符的文件
  • 可执行文件:可在系统上运行的文件
  • 数据文件:包含不可打印二进制字符,又不能在系统上运行的文件

查看整个文件

  1. cat命令
    cat命令就是简单的将文件的内容全部显示出来,理解很简单,介绍下几个参数

    • -n:给显示的内容加上行号
    • -b:只给有文本的行添加行号
    • -s:将多个空白行压缩到单个空白行
  2. more命令
    cat命令的缺陷是,一旦运行了cat命令,则对于内容非常多的文件,将会持续打印直到完成,这样在打印的过程中将无法进行其他的命令,除非强制退出当前命令。为了解决这个问题,开发人员编写了more命令。more命令会显示文本文件的内容,但是会在显示每页数据之后停下来,等待操作人员输入命令来进行后续活动。
  3. less命令
    less命令的命名实际上是个文字游戏—“less is more”,应该说查看文件内容就用less命令,不会将文件内容打印到终端,并且支持许多命令还有方向键查看文件内容,这样在查看文件内容时你就有完全控制权了。

查看部分文件

  1. head命令
    显示文件开头几行的内容,默认显示10行,可以大致知道文件的内容而不用加载全部文件。参数与tail命令差不多,接下来着重介绍tail命令
  2. tail命令
    tail命令会显示文件末尾部分的内容。默认情况也是显示文件的末尾10行,也可跟参数控制
    • -c bytes:显示文件最后的bytes个字节的字符
    • -n lines:显示文件最后的lines行
    • -f:让tail程序一直保持活动状态,如果有新的内容则在文件的末尾显示出来
    • -pid=PID:和-f参数一起,跟踪一个文件直到ID为PID的进程结束
    • -s sec:和-f参数一起,在每次循环输出之间休眠sec秒

-f参数是tail命令的一个突出的特性,它允许你在其他进程使用该文件时查看文件的内容。tail命令会保持活动状态并不断地显示添加到文件中的内容。是实时监测系统日志的绝妙方式。

Shell 编程-常见的文件处理命令的更多相关文章

  1. shell 编程生成日期文件;Server虚拟机上进行Web服务器配置

    shell 编程生成日期文件 1. 请编写一个脚本,命名为sh01.sh,其功能是: 键盘输入文件名(要求使用名字全拼作为文件名). 自动创建3个文件. 1个为系统当天日期(CCYYMMDD). 1个 ...

  2. shell编程:定义简单标准命令集

    shell是用户操作接口的意思,操作系统运行起来后都会给用户提供一个操作界面,这个界面就叫shell,用户可以通过shell来调用操作系统内部的复杂实现,而shell编程就是在shell层次上进行编程 ...

  3. shell编程必须要掌握的命令-xargs

    一,说xargs命令前,说一下什么是shell编程 什么是shell编程呢,说白了就是按一定的规则把各种命令组织起来,完成一定的事情.纯属个人理解,哈哈.不管是交互式的shell,还是非交互的shel ...

  4. linux shell编程学习笔记(二) --- grep命令

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达 ...

  5. Linux Shell编程(21)——复杂命令

    更高级的用户命令find-exec COMMAND \;在每一个find 匹配到的文件执行 COMMAND 命令. 命令序列以 ; 结束( ";" 是 转义符 以保证 shell ...

  6. Linux编程 23 shell编程(结构化条件判断 命令if -then , if-then ... elif-then ...else,if test)

    一.概述 在上一篇里讲到了shell脚本,shell按照命令在脚本中出现的顺序依次进行处理,对于顺序操作已经足够了,但许多程序要求对shell脚本中的命令加入一些逻辑流程控制,这样的命令通常叫做 结构 ...

  7. SHELL编程入门简介

    一.SHELL软件概念和应用场景 1) 学习Linux技术,不是为了学习系统安装.命令操作.用户权限.配置IP.网络管理,学习Linux技术重点:基于Linux系统部署和维护各种应用软件.程序(Apa ...

  8. shell编程 之 test命令

    shell编程里的测试test命令基本可以分为3种数据类型,每种都不一样.个人更倾向于理解为条件语句的写法规则,就是test加条件加判断语句. 1 数值类型 基本可以分为6个判断:-eq等于,-ne不 ...

  9. 末学者笔记--shell编程上 1 玄

    Shell 编程 [内容简列]: 1.shell简介 2. shell分类 3. 查看shell 4. 第一个shell脚本 5. shell编程常用命令 5.1 grep 5.2 cut 5.3 s ...

随机推荐

  1. PYQT4 Python GUI 编写与 打包.exe程序

    工作中需要开发一个小工具,简单的UI界面可以很好的提高工具的实用性,由此开启了我的第一次GUI开发之旅,下面将自己学习的心得记录一下,也做为学习笔记吧!!! 参考:http://www.qaulau. ...

  2. 【Unity】Domina-Game总结与反思

    [Unity]Domina-Game总结与反思 2018/6/15 我总算是把物理课作业--Domina-Game给赶完了,这也算是我用Unity做的第一个游戏吧(不得不说我的脚本写的超烂的)...纪 ...

  3. .Net MVC5路由机制与扩展

    新建一个MVC项目启动后,首先访问的地址是http://localhost:xxx/Home/Index,这时候我们也明白因为在程序中有个叫做Home的控制器,并且在这个控制器下面有个叫做Index的 ...

  4. cesium编程中级(二)源码编译

    cesium编程中级(二)源码编译 有些情况下,比如我们自己从Github下载了最新的代码,或者自己临时修改了一点代码,想要编译后的Build文件夹的内容,需要自行编译源码,这里介绍一下编译的方法 下 ...

  5. bash shell & 环境变量

    root是没有~/.bashrc的,只. /etc/profile即可,/etc/profile和~/.bashrc的作用类似,只是作用域不同,都是写死的export,也有动态的脚本去设置命令和环境变 ...

  6. pageadmin CMS网站建设教程:站点添加自定义字段

    首先看看pagedmin默认的站点设置都有什么,如下图: 这里只有一些最基本的参数设置,用过3.0版本或用过其他公司开发的cms的用户应该有这种体验,在站点设置中可以设置logo图片,备案号,底部内容 ...

  7. iOS 使用 TestFlight 测试

    TestFlight 已经并入 Itunes connect. 测试方法: 1. itunes connect 上创建应用 2. xcode 里 archive 应用并 submit 到 itunes ...

  8. 【ocp-12c】最新CUUG OCP-071考试题库(48题)

    48.(10-12)choose the best answer View the Exhibit and examine the description for the PRODUCTS and S ...

  9. Spring框架注解

    这四个注解,功能都是一样的,都是用来创建对象的. 但是为什么有这么四个吗?Spring中提供了三个@Component的衍生注解:(功能目前来讲是一样的) @Controller      :WEB层 ...

  10. 超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群

    超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群 ps:本文的步骤已自实现过一遍,在正文部分避开了旧版教程在新版使用导致出错的内容,因此版本一致的情况下照搬执行基本不会有大错误. ...