1.7 文件的管理(XFS、pwd、touch、mkdir、rm、cp、cat、less、head、tail)

文件的管理

文件管理的方式有多种:
改变目录:cd
创建/修改/移动/删除:touch mkdir mv vi rm cp

1、 创建文件和文件夹

touch:创建文件

作用:常用来创建空文件、如果文件存在,则修改这个文件的时间。
补充:文件的三种时间

查看文件的修改时间:

root@CHENDAJIE ~]# ll /etc/passwd
-rw-r--r-- 1 root root 2127 9月  25 19:54 /etc/passwd	

查看文件属性(其中包括文件时间属性)

[root@CHENDAJIE ~]# stat /etc/passwd
  文件:"/etc/passwd"
  大小:2127            块:8          IO 块:4096   普通文件
设备:803h/2051d        Inode:9519488     硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
最近访问:2019-09-28 17:08:18.733999922 +0800
最近更改:2019-09-25 19:54:40.433974284 +0800
最近改动:2019-09-25 19:54:40.434974284 +0800
创建时间:-

访问时间:atime 查看内容 cat a.txt
修改时间:mtime 修改内容 vim a.txt
改变时间:ctime 文件属性,比如权限 change time。chmod +x a.sh

后面那几个操作表示如何修改对应的时间

语法:touch 文件名

[root@CHENDAJIE ~]# cd /opt/
[root@CHENDAJIE opt]# ls
[root@CHENDAJIE opt]# touch a.txt
[root@CHENDAJIE opt]# touch file1 file2	#创建file1 和file2
[root@CHENDAJIE opt]# touch file{3..9}	#创建file3到file9的文件
[root@CHENDAJIE opt]# ls
a.txt  file1  file2  file3  file4  file5  file6  file7  file8  file9

touch -d:指定文件修改时间

[root@CHENDAJIE opt]# touch -d "20190929" chouzhu.txt
[root@CHENDAJIE opt]# ll chouzhu.txt 
-rw-r--r-- 1 root root 0 9月  29 00:00 chouzhu.txt

使用vim和重定向创建一个新文件

用vim命令创建一个新文件

[root@CHENDAJIE opt]# vim cz.txt 

wq保存

[root@CHENDAJIE opt]# ls
a.txt        cz.txt  file2  file4  file6  file8
chouzhu.txt  file1   file3  file5  file7  file9

用重定向创建一个新文件

[root@CHENDAJIE opt]# echo aaa > a.txt
[root@CHENDAJIE opt]# ls
a.txt        cz.txt  file2  file4  file6  file8
chouzhu.txt  file1   file3  file5  file7  file9

mkdir:创建目录

作用:创建目录
语法:mkdir (选项) 文件名
例:

[root@CHENDAJIE opt]# mkdir dir1	#在当前路径下创建目录dir1
[root@CHENDAJIE opt]# mkdir dir2 dir3 /home/dir4	#在当前路径下创建目录dir2 dir3 以及在/home目录下创建dir4
[root@CHENDAJIE opt]# ls
a.txt        cz.txt  dir2  file1  file3  file5  file7  file9
chouzhu.txt  dir1    dir3  file2  file4  file6  file8
[root@CHENDAJIE opt]# ls /home
chendajie  dir4

mkdir -p :在创建一个目录的时候同时创建它的父目录。
[

[root@CHENDAJIE opt]# mkdir -p /tmp/a/b/c
root@CHENDAJIE opt]# tree /tmp/
/tmp/
├── a
│   └── b
│       └── c
										...

2、删除文件和目录:

rm:

作用:可以删除一个目录中的一个或多个文件或目录,对于链接文件,只是删除整个链接文件,而原文件保持不变的
语法:rm (选项) 处理对象
选项:
-f 强制删除,没有提示
-r 删除目录
例:

[root@CHENDAJIE opt]# ls
a.txt        cz.txt  dir2  file1  file3  file5  file7  file9
chouzhu.txt  dir1    dir3  file2  file4  file6  file8
[root@CHENDAJIE opt]# rm -rf a.txt 
[root@CHENDAJIE opt]# ls
chouzhu.txt  dir1  dir3   file2  file4  file6  file8
cz.txt       dir2  file1  file3  file5  file7  file9
[root@CHENDAJIE opt]# rm -rf file* 
[root@CHENDAJIE opt]# ls
chouzhu.txt  cz.txt  dir1  dir2  dir3

rm -rf 使用时需要慎重,防止误删除重要的数据,此处rm 其他用法暂时不介绍,可以自己查看一下man手册。

复制文件:cp

命令:cp 源文件/目录 目录文件/目录
选项:-R/r:递归处理,将指定目录下的所有文件与子目录一并处理
复制文件

[root@CHENDAJIE opt]# cp /etc/passwd /opt/
[root@CHENDAJIE opt]# ls
chouzhu.txt  cz.txt  dir1  dir2  dir3  passwd

复制目录:

[root@CHENDAJIE opt]# cp -r /boot/grub /opt/
[root@CHENDAJIE opt]# ls
chouzhu.txt  cz.txt  dir1  dir2  dir3  grub  passwd

复制的同时给文件改名:
cp [指定要复制的文件] [指定路径的同时修改文件名]

[root@CHENDAJIE opt]# cp chouzhu.txt ./b.txt
[root@CHENDAJIE opt]# ls
b.txt  chouzhu.txt  cz.txt  dir1  dir2  dir3  grub  passwd

移动文件:mv

移动文件passwd 到dir1目录中

[root@CHENDAJIE opt]# ls
b.txt  chouzhu.txt  cz.txt  dir1  dir2  dir3  grub  passwd
[root@CHENDAJIE opt]# mv passwd dir1
[root@CHENDAJIE opt]# ls
b.txt  chouzhu.txt  cz.txt  dir1  dir2  dir3  grub
[root@CHENDAJIE opt]# tree dir1
dir1
└── passwd

0 directories, 1 file

移动文件的同时改名:

[root@CHENDAJIE opt]# ls
b.txt  chouzhu.txt  cz.txt  dir1  dir2  dir3  grub  passwd
[root@CHENDAJIE opt]# mv chouzhu.txt a.txt
[root@CHENDAJIE opt]# ls
a.txt  b.txt  cz.txt  dir1  dir2  dir3  grub

查看文件命令:cat、more、less、head、tail

命令之:cat

语法:cat 文件名
作用:查看文件内容,一次显示整个文件的内容

[root@CHENDAJIE opt]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
								...

命令之:more

作用:以分页形式显示文件内容
语法:more + 文件名
说明: 按下回车刷新一行,按下空格刷新一屏,输入q键退出

命令之:less

作用:和more功能一样
语法:less +文件名
说明:linux中more与less的区别
more:不支持后退,但几乎不需要加参数,空格键是向下翻页,Enter键是向下翻一行,在不需要后退的情况下比较方便
less:支持前后翻滚,既可以向上翻页(pageup按键),也可以向下翻页(pagedown按键)。,空格键是向下翻页,Enter键是向下翻一行

命令之:head,默认显示前10行

作用: 用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容
语法:head(选项)文件名
参数: -n 显示从文件头开始的行数

[root@CHENDAJIE opt]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin

显示前3行

[root@CHENDAJIE opt]# head -n 3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

命令之:tail

作用: 用于显示文件中的尾部内容。默认在屏幕上显示指定文件的末尾10行
语法:tail (选项)文件名
参数:
-n 显示文件尾部多少行的内容(n为数字)
-f 动态显示数据(不关闭),常用来查看日志
查看最后3行记录

[root@CHENDAJIE ~]# tail -n 3 /var/log/secure
Sep 29 16:19:55 CHENDAJIE sshd[2444]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:19:57 CHENDAJIE sshd[2491]: Accepted password for root from 172.17.2.69 port 62347 ssh2
Sep 29 16:19:57 CHENDAJIE sshd[2491]: pam_unix(sshd:session): session opened for user root by (uid=0)

动态查看文件内容
在一个终端执行此命令查看到的文件内容如下:

[root@CHENDAJIE ~]# tail -f /var/log/secure
Sep 29 16:19:55 CHENDAJIE sshd[2444]: Accepted password for root from 172.17.2.69 port 62334 ssh2
Sep 29 16:19:55 CHENDAJIE sshd[2444]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:19:57 CHENDAJIE sshd[2491]: Accepted password for root from 172.17.2.69 port 62347 ssh2
Sep 29 16:19:57 CHENDAJIE sshd[2491]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:22:28 CHENDAJIE sshd[2567]: Accepted password for root from 172.17.2.69 port 62651 ssh2
Sep 29 16:22:28 CHENDAJIE sshd[2567]: pam_unix(sshd:session): session opened for user root by (uid=0)

此时关闭一个终端,文件内容如下:

[root@CHENDAJIE ~]# tail -f /var/log/secure
Sep 29 16:19:55 CHENDAJIE sshd[2444]: Accepted password for root from 172.17.2.69 port 62334 ssh2
Sep 29 16:19:55 CHENDAJIE sshd[2444]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:19:57 CHENDAJIE sshd[2491]: Accepted password for root from 172.17.2.69 port 62347 ssh2
Sep 29 16:19:57 CHENDAJIE sshd[2491]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:22:28 CHENDAJIE sshd[2567]: Accepted password for root from 172.17.2.69 port 62651 ssh2
Sep 29 16:22:28 CHENDAJIE sshd[2567]: pam_unix(sshd:session): session opened for user root by (uid=0)









Sep 29 16:22:46 CHENDAJIE sshd[2567]: pam_unix(sshd:session): session closed for user root

中间的空格是为了方便区分。此时我们再开一个终端试试:

[root@CHENDAJIE ~]# tail -f /var/log/secure
Sep 29 16:19:55 CHENDAJIE sshd[2444]: Accepted password for root from 172.17.2.69 port 62334 ssh2
Sep 29 16:19:55 CHENDAJIE sshd[2444]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:19:57 CHENDAJIE sshd[2491]: Accepted password for root from 172.17.2.69 port 62347 ssh2
Sep 29 16:19:57 CHENDAJIE sshd[2491]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:22:28 CHENDAJIE sshd[2567]: Accepted password for root from 172.17.2.69 port 62651 ssh2
Sep 29 16:22:28 CHENDAJIE sshd[2567]: pam_unix(sshd:session): session opened for user root by (uid=0)
^C
[root@CHENDAJIE ~]# tail -f /var/log/secure
Sep 29 16:19:55 CHENDAJIE sshd[2444]: Accepted password for root from 172.17.2.69 port 62334 ssh2
Sep 29 16:19:55 CHENDAJIE sshd[2444]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:19:57 CHENDAJIE sshd[2491]: Accepted password for root from 172.17.2.69 port 62347 ssh2
Sep 29 16:19:57 CHENDAJIE sshd[2491]: pam_unix(sshd:session): session opened for user root by (uid=0)
Sep 29 16:22:28 CHENDAJIE sshd[2567]: Accepted password for root from 172.17.2.69 port 62651 ssh2
Sep 29 16:22:28 CHENDAJIE sshd[2567]: pam_unix(sshd:session): session opened for user root by (uid=0)









Sep 29 16:22:46 CHENDAJIE sshd[2567]: pam_unix(sshd:session): session closed for user root




Sep 29 16:22:55 CHENDAJIE sshd[2630]: Accepted password for root from 172.17.2.69 port 62654 ssh2
Sep 29 16:22:55 CHENDAJIE sshd[2630]: pam_unix(sshd:session): session opened for user root by (uid=0)

可以看出,随着我们在其他终端的操作,此时文件内容也会随着动态改变。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值