【RHCSA】文件的其他操作命令

目录

文本内容统计wc

复制、移动文件

   复制文件或者目录cp

移动文件或目录mv

查找文件的路径

        whereis:

        which:

        find详解:

文件压缩与解压缩

zip和unzip命令

gzip和gunzip命令

xz、unxz命令

tar归档命令

文件上传下载


文本内容统计wc

        用于统计指定文本文件的行数,字数,或者字节数

        语法:wc [选项] 文件名

选项

作用

-l

只显示行数

-w

只显示单词数

-c

只显示字节数

        eg.如果每个用户占一行,那么统计行数就统计用户数了

        wc -l /etc/…

复制、移动文件

   复制文件或者目录cp

              语法:cp [选项] 源文件 目标文件

选项

功能

-a

通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录

-d

拷贝时保留链接

-f

在覆盖已经存在的目标文件时不提示

-i

在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝

-p

除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中

-r

若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件,此时目标文件必须为一个目录名

        -a相当于内含了-d -r -I

移动文件或目录mv

        用于剪切或者重命名文件

        语法:mv [选项] 源文件名称 目标文件名称

        不同与cp这个是剪切,会把源文件删掉

语法

功能

mv file1 file2

如果file2不存在,修改file1名字为file2,如果file2已存在,把file1的内容覆盖file2,删除file1。

mv -i file1 file2

操作前提示是否确定操作

mv file1 file2 dir1

把file1和file2移动到dir1里

mv dir1 dir2

如果dir2不存在,相当于把dir1改名。如果dir2存在,把dir1放到dir2中,相当于下一层目录

mv dir1/* dir2/:

把dir1中的文件移动到dir2中(同名文件覆盖)

mv -v

显示过程信息

        【如果mv命令默认提示确认信息,是因为系统配置了alias】

        [root@localhost mulu]# alias mv

        alias mv='mv -i'

查找文件的路径

命令

说明

示例

whereis

可以搜索系统命令的可执行文件路径和说明文档

#whereis ls

which

which是搜索系统命令的可执行文件

#which ls

locate

按照数据库搜索,搜索速度快,消耗资源小。数据库位置var/lib/mlocate./mlocate.db,可以使用updatedb 命令强制更新数据库,

#locate ls

find

可按照文件名、大小、时间、权限、类型、所属者、所属组来搜索文件

find [path…] [expression]

        whereis:

                [root@localhost ~]# whereis ls

                ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

        which:

                [root@localhost ~]# which ls

                alias ls='ls --color=auto'【ls命令的别名】

                /usr/bin/ls【可执行文件】

        find详解:

参数

作用

-name

匹配名称,具体的时候可以不用"",比如"a*"  或者直接aa

-size

匹配文件的大小( 50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)

-mtime -n +n

匹配修改内容的时间(4指小于等于4天内的文件名: 4,大于等于5天前的文件名;4指前4-5那一天的文件)

-atime -n +n

匹配访问文件的时间

-ctime -n +n

匹配修改文件权限的时间

-newer f1 !f2

匹配比文件1新但比2旧的文件

-perm

匹配权限(mode为完全匹配,-mode为包含即可)

 -user

匹配所有者

-group

匹配所有组

-nouser

匹配无所有者的文件

-nougroup

匹配无所属组的文件

-type b/d/c/p/l/f

匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文件、文本文件)

-prune

忽略某个目录

-exec ……{}\;

后面可跟用于进一步处理搜索结果的命令

        Ⅰ、按照文件名搜索

                [root@localhost ~]# find 路径 [选项] 搜索内容

                选项:

                -name:按照文件名搜索

                -iname:按照文件名搜索,不区分文件名大小写

                [root@localhost mulu]# find . -name "a*"

                ./a

                ./aaa

        Ⅱ、按照文件大小搜索

                【文件大小单位 M K 】

                [root@localhost ~]# find 搜索路径 [选项]  搜索内容

                选项:

                -size [+] [-]大小:按照大小搜索文件,这里的+是比指定大小还要大的文件,-就是比指定大小还要小的文件

                [root@localhost mulu]# find . -size -1M

                ./aaa

                ./ccc

        Ⅲ、按照修改时间搜索

                Linux中的文件有访问时间(atime),数据修改时间(mtime),状态修改时间(ctime)这三个时间,我们可以按照时间来搜索文件。

                [root@localhost ~]# find 搜索路径 [选项]  搜索内容

                选项:

                -atime +-时间:按照文件访问时间搜索

                -mtime +-时间:按照文件数据修改时间搜索

                -ctime +-时间:按照文件状态修改时间搜索

                -newer file:把比file修改时间更新的文件列出来

        

  • -5:代表5天内修改的文件
  • 5:代表前5~6天那一天修改的文件
  • +5:代表6天前修改的文件。

        Ⅳ、按照权限搜索

                [root@localhost ~]# find 搜索路径 [选项]  搜索内容

                选项:

                -perm 权限模式:查找文件权限刚好等于权限模式的文件

                -perm -权限模式:查找文件权限全部包含权限模式的文件

                -perm +权限模式:查找文件权限包含权限模式的任意一个权限的文件

        如果要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可:

        [root@localhost ~]# find / -perm -4000 -print

        Ⅴ、按照所有者和所属组搜索

                [root@localhost ~]# find 搜索路径 [选项]  搜索内容

                选项:

                -uid 用户id:按照用户id查找所有者是指定id的文件

                gid 组id:按照用户组id查找所属组是指定id的文件

                -user 用户名:按照用户名查找所有者是指定用户的文件

                -group 组名:按照组名查找所属组是指定用户组的文件

                -nouser:查找没有所有者的文件

        Ⅵ、按照文件类型搜索

                [root@localhost ~]# find 搜索路径 [选项]  搜索内容

                选项:

                -type d:查找目录

                -type f:查找普通文件

                -type l:查找软链接文件

        Ⅶ、逻辑运算符

                [root@localhost ~]# find 搜索路径 [选项]  搜索内容

                选项:

                -a :and 逻辑与

                -o :or 逻辑或

                -not :not 逻辑非

        Ⅷ、其他选项

动作

说明

-print

默认动作,将搜索结果写入到标准输出

-fprint file

与-print相同,但是将搜索结果写入到文件file

-ls

以详细格式显示搜索结果

-fls file

同-ls,但是将搜索结果写入到文件file

-delete

将搜索到的文件删除

-exec command { } \;

查找并执行命令{}表示搜索到的文件名

-ok command { } \;

查找并执行命令,但是需要用户确认

        [root@localhost ~]# find ~ -name "txt.txt" -exec mv {} mulu \;

        解析:

        find ~:从根目录找

        -name:选项,以文件名找

        "tx..":匹配名字

        -exec:类似管道符,上表倒数第二行👆

        mv:-exec后直接跟想要对文件做出的命令

        {}:这就代表着找到的文件

        mulu:这个是我的文件名,具体看mv命令去

        \; :这个;表示命令结束然后用个转义符\表示;不是命令里的内容

【秋之疑惑】:移动了以后会提示这一句话不晓得为什么,但是确实移动成功了。

mv: '/root/mulu/txt.txt' 与'mulu/txt.txt' 为同一文件

【grep与find区别:一个匹配的是文件内容(grep),一个匹配的是文件本身(find)】

文件压缩与解压缩

zip和unzip命令

zip:可以压缩文件和目录

语法:zip [选项] qiu.zip 所需压缩文件,可以是多个

这个zip是为了让自己容易识别的 实际上任意名字都行

语法:unzip file

实例①:用zip压缩qiu文件

[root@localhost mulu]# zip qiu.zip qiu

  adding: qiu (deflated 13%)

[root@localhost mulu]# ll

-rw-r--r--. 1 root root  31 10月 11 14:19 qiu

-rw-r--r--. 1 root root 183 10月 13 10:55 qiu.zip

压缩率为最高去压缩qiu文件

[root@localhost mulu]# zip -9 qiumax.zip qiu

  adding: qiu (deflated 13%)

实例②:将当前目录mulu连同目录下文件一起压缩

[root@localhost mulu]# zip -r mulu.zip mulu/

  adding: mulu/ (stored 0%)

实例③:向压缩文件mulu.zip中添加文件aaa

[root@localhost mulu]# zip -m mulu.zip aaa

  adding: aaa (stored 0%)

实例④:删除压缩文件中的文件

[root@localhost mulu]# zip -d mulu.zip text

实例⑤:删除压缩文件时排除某个文件

这里是删除除了text1.txt之外的后缀为txt的文件

[root@localhost mulu]# zip mulu.zip *.txt -x text1.txt

实例⑥:解压文件mulu.zip

[root@localhost mulu]# unzip mulu.zip

Archive:  mulu.zip

gzip和gunzip命令

xz、unxz命令

tar归档命令

        格式:tar [选项] [args]..

        选项必须有两个,一个必选另外一个任选

        选项:任选其一

选项

功能

-c

创建.tar格式的包文件

-x

释放.tar格式的包文件

-t

查看包中的文件列表

        必选

-f

用于指定打包文件名

当与-c选项一起用时,创建的tar包文件使用改选项指定的文件名

当与-x选项一起用时,则释放该选项指定的tar包文件 

        辅助选项

选项

功能

-v

表示在命令执行时显示详细的提示信息

-p

打包时保留文件及目录的权限

-z

调用gzip程序,以gzip格式压缩或解压缩文件(tar.gz)

-j

调用bzip2程序,以bzip2格式压缩或解压缩文件(.tar.bz2)

-J大写

使用xz压缩或解压缩文件(.tar.xz), xz的压缩率通常比bzip2更高

-C大写

和-x选项一起使用,表示释放包时指定释放的目标路径

        [root@localhost mulu]# tar cvf passwd.tar passwd

        

        【查看包里的东西】

        [root@localhost mulu]# tar tf passwd.tar

        【添加东西到包里】

        [root@localhost mulu]# tar rvf passwd.tar e

        -r是添加

        【打包的同时压缩】

        [root@localhost mulu]# tar czf passwd.tar.gz passwd

        压缩过了就不能用上面添加东西的方法添加了

        【这里的解包】

文件上传下载

[root@localhost ~]# sftp root@linux的ip

退出是输入exit

【这里没学细,以后在rhce里应该会详细介绍】

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值