Linux---文件操作命令(touch、cat、more)

news/2024/11/25 21:56:40/

1.  touch命令

可以通过touch命令创建文件

语法:touch [选项] Linux路径

 

touch命令,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用。

touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文

件),此命令更重要的功能是修改文件的时间参数(当文件存在时,会修改此文件的时间参数)。

Linux 系统中,每个文件主要拥有 3 个时间参数(通过 stat 命令进行查看),分别是文件的访问时

间、数据修改时间以及状态修改时间:

访问时间:只要文件的内容被读取,访问时间就会更新。

数据修改时间:当文件的内容数据发生改变,此文件的数据修改时间就会跟着相应改变。

状态修改时间:当文件的状态发生变化,就会相应改变这个时间。

touch 命令可以只修改文件的访问时间,也可以只修改文件的数据修改时间,但是不能只修改文件

的状态修改时间。因为,不论是修改访问时间,还是修改文件的数据时间,对文件来讲,状态都会

发生改变,即状态修改时间会随之改变(更新为操作当前文件的真正时间)。

[root@localhost ~]#touch bols
#建立名为 bols 的空文件
[root@localhost ~]#ll --time=atime bols
#查看文件的访问时间
-rw-r--r-- 1 root root 0 Sep 25 21:23 bols
#文件上次的访问时间为 5 月 15 号 21:23
[root@localhost ~]#touch bols
[root@localhost ~]#ll --time=atime bols
-rw-r--r-- 1 root root 0 May 15 16:36 bols
#而如果文件已经存在,则也不会报错,只是会修改文件的访问时间。
[root@localhost ~]# touch -d "2017-05-04 15:44" bols
[root@localhost ~]# ll bols; ll --time=atime bols; ll --time=ctime bols
-rw-r--r-- 1 root root 0 May 4 2017 bols
-rw-r--r-- 1 root root 0 May 4 2017 bols
-rw-r--r-- 1 root root 0 Sep 25 21:40 bols
#ctime不会变为设定时间,但更新为当前服务器的时间

2. cat命令 

cat(英文全拼:concatenate)命令用于连接文件并打印到标准输出设备上。

cat [选项]  Linux路径

#把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里
cat -n textfile1 > textfile2
#把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里
cat -b textfile1 textfile2 >> textfile3
#清空 /etc/test.txt 文档内容
cat /dev/null > /etc/test.txt
#cat 也可以用来制作镜像文件。例如要制作软盘的镜像文件,将软盘放好后输入
cat /dev/fd0 > OUTFILE

3. more命令 

more 命令类似 cat ,不过会以一页一页的形式显示,最基本的指令就是按空格键就往下一页显

示,按 b 键就会往回一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,要

按 h 。

more [选项]  Linux路径

 Enter 向下n行,需要定义。默认为1行

Ctrl+F 向下滚动一屏

空格键 向下滚动一屏

Ctrl+B 返回上一屏

= 输出当前行的行号

:f 输出文件名和当前行的行号

V 调用vi编辑器

!命令 调用Shell,并执行命令

q 退出more

#逐页显示 testfile 文档内容,如有连续两行以上空白行则以一行空白行显示
more -s testfile
#从第 20 行开始显示 testfile 之文档内容
more +20 testfile


http://www.ppmy.cn/news/75076.html

相关文章

[比赛简介]Parkinson‘s Freezing of Gait Prediction

比赛链接:https://www.kaggle.com/competitions/tlvmc-parkinsons-freezing-gait-prediction 比赛简介 本次比赛的目标是检测步态冻结(FOG),这是一种使人衰弱的症状,困扰着许多帕金森病患者。您将开发一个机器学习…

【内部类匿名内部类反射LambdaStream流的使用】

一、内部类和匿名内部类 匿名内内部类和lambda表达式主要的区别在于 1、匿名内部类他必须实现继承类的所有方法 2、匿名内部类在重写时有override标识,而lambda没有 3、lambda表达式继承的接口只能有一个抽象方法 在使用匿名内部类的过程中,我们需要注意…

2023年最新VMware 17+虚拟机详细配置安装【程序员使用指南】!!

文章目录 Vmware版本选择17Pro安装自定义安装填写对应的许可证正式安装虚拟机进行对应的配置配置镜像文件选择对应的语言:到这个界面,选择中文 安装结束连接对应的xshell Vmware版本选择17Pro安装 ● 最开始从这里出发 自定义安装 ● 记得自定义在自…

解决APP抓包问题「网络安全」

1.前言 在日常渗透过程中我们经常会遇到瓶颈无处下手,这个时候如果攻击者从APP进行突破,往往会有很多惊喜。但是目前市场上的APP都会为防止别人恶意盗取和恶意篡改进行一些保护措施,比如模拟器检测、root检测、APK加固、代码混淆、代码反调试…

使用JWT实现登录认证

一、介绍 1.1、Session、Cookie、Token区别 session:存储再服务端,无法引用与分布式场景,并且需要占用服务端的资源 cookie:存储再客户端,适用于分布式场景,但是存在安全问题,不支持垮域访问 t…

【多线程】什么是线程死锁?形成条件是什么?如何避免?

文章目录 一、什么是线程死锁二、线程死锁三、形成死锁的四个必要条件是什么四、如何避免线程死锁 一、什么是线程死锁 死锁是指两个或两个以上的进程(线程)在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若…

STL --- 2、容器 set 和multiset

std::set 和 std::multiset 都是 STL 中的关联容器,用于存储一组有序的元素。 1、std::set 和 std::multiset 特点 (1)std::set 中每个元素的键值都唯一,而 std::multiset 中可以有多个相同的键值。 (2)s…

Linux搭建MQTT服务器(mosquitto)并使用

零、码仙励志 在路上,寻找一个继续的理由,寻找一个曾经的梦想。 一、Linux搭建MQTT服务器(mosquitto)并使用 1、安装依赖 yum install gcc-c cmake openssl-devel libuuid-devel c-ares-devel uuid-devel libwebsockets-devel…