新手必须掌握的Linux命令(3)

文件目录管理命令

在Linux 系统的日常工作中,还需要掌握对文件的创建,修改,复制,剪切,更名与删除等操作

  • touch 命令

touch 命令用于创建空白文件或设置文件的时间,格式为 “touch [选项][文件]”。

在创建空白的文本文件方面,这个touch命令相当简洁。比如,touch test 命令可以创建出一个名为test的空白文本文件。对touch命令来讲,有难度的操作主要是体现在设置文件内容的修改时间(mtime),文件权限或属性的更改时间(ctime)与文件的读取时间(atime)上面。

touch 命令的参数及其作用

参数

作用

-a

修改“读取时间” atime

-m

修改“修改时间” mtime

-d

同时修改atime 与 mtime

接下来,我们先使用ls命令查看一个文件的修改时间,然后修改这个文件, 最后再通过touch命令把修改后的文件时间设置成修改之前的时间:

root@ubuntu-1:~/workroom/c_test/2022$ ls -l diff_a.txt-rw-rw-r– 1 root root 14 Aug 24 02:23 diff_a.txtroot@ubuntu-1:~/workroom/c_test/2022$ echo “test touch” >> diff_a.txtroot@ubuntu-1:~/workroom/c_test/2022$ ls -l diff_a.txt-rw-rw-r– 1 root root 25 Aug 24 03:47 diff_a.txtroot@ubuntu-1:~/workroom/c_test/2022$ touch -d “2020-05-20 05:20” diff_a.txtroot@ubuntu-1:~/workroom/c_test/2022$ ls -l diff_a.txt-rw-rw-r– 1 root root 25 May 20 2020 diff_a.txtroot@ubuntu-1:~/workroom/c_test/2022$ touch -d “2022-05-20 05:20” diff_a.txtroot@ubuntu-1:~/workroom/c_test/2022$ ls -l diff_a.txt-rw-rw-r– 1 root root 25 May 20 05:20 diff_a.txt

  • mkdir 命令

mkdir 命令用于创建空白的目录,格式为 “mkdir [选项] 目录”。

在Linux 系统中,文件夹是最常见的文件类型之一,除了能创建单个空白目录外,mkdir命令还可以结合-p参数来递归创建出具有嵌套叠层关系的文件目录。

root@ubuntu-1:~/workroom/c_test/2022$ mkdir testroot@ubuntu-1:~/workroom/c_test/2022$ cd test/root@ubuntu-1:~/workroom/c_test/2022/test$ lsroot@ubuntu-1:~/workroom/c_test/2022/test$ mkdir -p a/b/c/d/eroot@ubuntu-1:~/workroom/c_test/2022/test$ lsaroot@ubuntu-1:~/workroom/c_test/2022/test$ cd aroot@ubuntu-1:~/workroom/c_test/2022/test/a$ lsbroot@ubuntu-1:~/workroom/c_test/2022/test/a$ cd b/root@ubuntu-1:~/workroom/c_test/2022/test/a/b$ lscroot@ubuntu-1:~/workroom/c_test/2022/test/a/b$ cd croot@ubuntu-1:~/workroom/c_test/2022/test/a/b/c$ lsdroot@ubuntu-1:~/workroom/c_test/2022/test/a/b/c$ cd droot@ubuntu-1:~/workroom/c_test/2022/test/a/b/c/d$ lseroot@ubuntu-1:~/workroom/c_test/2022/test/a/b/c/d$ cd eroot@ubuntu-1:~/workroom/c_test/2022/test/a/b/c/d/e$ ls

  • cp 命令

cp 命令用于复制文件或目录,格式为”cp [选项]源文件 目标文件”。在Linux 系统中,复制操作具体分为3种情况:

如果目标文件是目录,则会把源文件复制到该目录中;如果目标文件也是普通文件,则会询问是否要覆盖它;如果目标文件不存在,则执行正常的复制操作。

cp命令的参数及其作用

参数

作用

-p

保留原始文件的属性

-d

若对象为”链接文件”,则保留该文件的属性

-r

递归持续复制(用于目录)

-i

若文件存在则询问是否覆盖

-a

相当于-pdr (p,d,r为上述参数)

接下来,使用touch创建一个名为test.log的普通空白文件,然后将其复制为一份名为x.log的备份文件,最后使用ls命令查看目录中的文件:

root@ubuntu-1:~/workroom/c_test/test_dir$ touch test.logroot@ubuntu-1:~/workroom/c_test/test_dir$ cp test.log x.logroot@ubuntu-1:~/workroom/c_test/test_dir$ lstest.log x.log

  • mv 命令

mv命令用于剪切文件或将文件重命名,格式为 “mv [选项] 源文件 [目标路径|目标文件名]”。

剪切操作不同于复制操作,因为它会默认把源文件删除掉,只保留剪切后的文件。如果在同一个目录中对一个文件进行剪切操作,其实也就是对其进行重命名:

root@ubuntu-1:~/workroom/c_test/test_dir$ mv x.log linux.logroot@ubuntu-1:~/workroom/c_test/test_dir$ lslinux.log test.log

  • rm 命令

rm 命令用于删除文件或目录,格式为”rm [选项] 文件”。

在Linux系统中删除文件时,系统会默认向您询问是否要执行删除操作,如果不想总是看到这种反复的确认信息,可在rm 命令后面跟上-f 参数来强制删除。另外,想要删除一个目录,需要在rm命令加一个-r参数才可以,否则删除不掉。我们来尝试删除前面创建的test.log 和 linux.log 文件:

root@ubuntu-1:~/workroom/c_test/test_dir$ rm linux.logrm: remove regular empty file ‘linux.log’? yroot@ubuntu-1:~/workroom/c_test/test_dir$ rm -f test.logroot@ubuntu-1:~/workroom/c_test/test_dir$ lsroot@ubuntu-1:~/workroom/c_test/test_dir$

  • dd命令

dd命令用于按照指定大小和个数的数据块来复制文件或转换文件,格式为 “dd [参数]”。

dd命令是一个比较重要的命令,它能够让用户按照指定大小和个数的数据块来复制文件的内容。Linux系统中有一个名为/dev/zero的设备文件,这个文件不会占用系统存储空间,但却可以提供无穷无尽的数据,因此可以使用它作为dd命令的输入文件,来生成一个指定大小的文件。

dd命令的参数及其作用

参数

作用

if

输入的文件名称

of

输出的文件名称

bs

设置每个块的大小

count

设置要复制块的个数

例如我们可以使用dd命令从/dev/zero设备文件中取出一个大小为500M的数据块,然后保存名为500_file的文件:

root@ubuntu-1:~/workroom/c_test/test_dir$ dd if=/dev/zero of=500_file count=1 bs=500M1+0 records in1+0 records out524288000 bytes (524 MB, 500 MiB) copied, 3.51978 s, 149 MB/sroot@ubuntu-1:~/workroom/c_test/test_dir$ ls500_fileroot@ubuntu-1:~/workroom/c_test/test_dir$ ls -l 500_file-rw-rw-r– 1 root root 524288000 Aug 24 04:49 500_fileroot@ubuntu-1:~/workroom/c_test/test_dir$ ls -lh 500_file-rw-rw-r– 1 root root 500M Aug 24 04:49 500_file

dd命令的功能也不仅限于复制文件这么简单,在Linux系统中可以直接使用dd命令来压制出光盘镜像文件,将它变成一个可立即使用的iso镜像。

bs 与 count 都是用来指定容量的大小,只要能满足需求,可随意组合搭配方式。

  • file 命令

file 命令用于查看文件的类型,格式为 “file 文件名”。

在Linux 系统中,由于文本,目录,设备等所有这些一切都统称为文件,而我们又不能单凭后缀就知道具体的文件类型,这时就需要使用file命令来查看文件类型了。

root@ubuntu-1:~/workroom/c_test/test_dir$ file 500_file500_file: data

打包压缩与搜索命令

  • tar命令

tar命令用于文件进行打包压缩或解压,格式为”tar [选项][文件]”。

在Linux系统中,常见的文件格式比较多,其中主要使用的是.tar或.tar.gz或.tar.bz2格式。

tar命令的参数及其作用:

参数

作用

-c

创建压缩文件

-x

解开压缩文件

-t

查看压缩包内有哪些文件

-z

用Gzip压缩或解压

-j

用bzip2压缩或解压

-v

显示压缩或解压的过程

-f

目标文件名

-p

保留原始的权限与属性

-P

使用绝对路径来压缩

-C

指定解压到的目录

首先,-c 参数用于创建压缩文件,-x参数用于解压文件,因此这两个参数不能同时使用。其次,-z参数指定使用Gzip格式来压缩或解压文件,-j参数指定使用bzip2格式来压缩或解压文件。用户使用时则是根据文件的后缀来决定应使用何种格式参数进行解压。在执行某些压缩或解压操作时,可能需要花费数个小时,非常推荐使用-v参数向用户不断显示压缩或解压的过程。-C 参数用于指定解压到哪个指定的目录。-f 参数特别重要,它必须放到参数的最后一位,代表要压缩或解压的软件包名称。

tar -czvf 压缩包名称.tar.gz 要打包的目录tar -xzvf 压缩包名称.tar.gz

使用tar命令将test目录通过gzip格式进行打包压缩,并将文件命名为test.tar.gz

root@ubuntu-1:~/workroom/c_test/2022$ tar -czvf test.tar.gz testtest/test/a/test/a/b/test/a/b/c/test/a/b/c/d/test/a/b/c/d/e/

接下来将打包后的压缩包文件指定解压到test_tmp目录中

//使用mkdir命令在当前路径下创建test_tmp目录root@ubuntu-1:~/workroom/c_test/2022$ mkdir test_xroot@ubuntu-1:~/workroom/c_test/2022$ tar -xzvf test.tar.gz -C test_xtest/test/a/test/a/b/test/a/b/c/test/a/b/c/d/test/a/b/c/d/e/

  • grep命令

grep命令用于在文本文件中执行关键词搜索,并显示匹配的结果,格式为”grep [选项][文件]”。grep 命令的参数及其作用如下表:

参数

作用

-b

将可执行文件当作文本文件来搜索

-c

仅显示找到的行数

-i

忽略大小写

-n

显示行号

-v

反向选择 – 仅列出没有关键词的行

grep命令是用途最广泛的文本搜索匹配工具,虽然有很多参数,但是大多数基本上用不到。

两个最常用的参数:-n参数用来显示搜索到信息的行号;-v参数用于反选信息。

在Linux 系统中,/etc/passwd文件是保存着所有的用户信息,而一旦用户的登录终端被设置成/sbin/nologin, 则不再允许登录系统,因此可以使用grep命令来查找出当前系统中不允许登录系统的所有用户信息:

root@ubuntu-1:~/workroom$ grep /sbin/nologin /etc/passwddaemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologinbin:x:2:2:bin:/bin:/usr/sbin/nologinsys:x:3:3:sys:/dev:/usr/sbin/nologingames:x:5:60:games:/usr/games:/usr/sbin/nologinman:x:6:12:man:/var/cache/man:/usr/sbin/nologinlp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologinmail:x:8:8:mail:/var/mail:/usr/sbin/nologinnews:x:9:9:news:/var/spool/news:/usr/sbin/nologin

  • find 命令

find 命令用于按照指定条件来查找文件,格式为 “find [查找路径] 寻找条件 操作”。

在Linux 系统中,搜索工作一般都是通过find命令来完成的,它可以使用不同的文件特性作为寻找条件(如文件名,大小,修改时间,权限等信息),一旦匹配成功则默认将信息显示到屏幕上。

参数

作用

-name

匹配名称

-perm

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

-user

匹配所有者

-group

匹配所有组

-mtime -n +n

匹配修改内容的时间(-n指n天以内,+n指n天以前)

-atime -n +n

匹配访问文件的时间(-n指n天以内,+n指n天以前)

-ctime -n +n

匹配修改文件权限的时间(-n 指n天以内,+n指n天以前)

-nouser

匹配无所有者的文件

-nogroup

匹配无所有组的文件

-newer f1 !f2

匹配比文件f1新但比f2旧的文件

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

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

-size

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

-prune

忽略某个目录

-exec ……{}:

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

这里讲解一下-exec参数重要的作用,这个参数用于把find命令搜索到的结果交由紧随其后的命令作进一步处理,由于find命令对参数的特殊要求,因此虽然exec是长格式形式,但是依然只需要一个减号(-)。

Linux 系统中的配置文件会保存到/etc目录中。如果要想获取该目录中所有以host开头的文件列表,可以执行以下命令:

root@ubuntu-1:~/workroom$ find /etc -name “host*” -print/etc/hosts.deny/etc/hostname/etc/init/hostname.sh.conf/etc/init/hostname.conf/etc/init.d/hostname.sh/etc/host.conf/etc/hosts/etc/hosts.allow

在整个文件系统中找出所有归属于test用户的文件并复制到/root/testresult目录。

该实验的重点是”-exec {} ;” 参数,其中的{}表示find 命令搜索出的每一个文件,并且命令的结尾必须是”;”,完成该实验的具体命令如下:

# find / -user test -exec cp -a {} /root/testresult/ ;

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
(0)
用户投稿
上一篇 2022年8月29日
下一篇 2022年8月29日

相关推荐

  • 关于苏宁易购的10个谣言

    一、苏宁易购已是国企。 谣言!不过是去年政府主导的新零售基金受让了苏宁易购部分老股,而且目前仍然只是不到20%的小股东,所谓后续一年了也没有任何实质进展,与此相关的是,江苏省掀起利…

    2022年8月24日
  • 英特尔流产的10nm曝光,样品中含3个小芯片

    近日,网上出现了基于Cannon Lake架构的英特尔 CPU 样本,设计为 10nm 芯片的 CPU采用了三芯片设计。或许英特尔将会在其未来的处理器中采用小芯片/混合设计。 英特…

    2022年8月23日
  • 留学生北京落户2022年新政策 2022年北京落户需要什么条件

    我们都知道在外地落户是一件十分繁琐的事情,尤其是对于留学生来说,那么留学生如果要在北京落户的话都有哪些新政策呢?如果要在北京落户都需要哪些条件?和小编一起来详细了解一下吧。 留学生…

    2022年7月26日
  • 绝地求生PUBG更新维护到几点?2022年10月26日绝地求生停机维护什么时候结束

    绝地求生PUBG2022年10月26日维护到什么时候结束?更新了哪些内容?这是绝地求生每周惯例的版本更新维护,小编这里带来了绝地求生2022年10月26日维护时间介绍,感兴趣的话就…

    2022年10月26日
  • 八万左右合资车国产车有那些?

    过年期间总是有网友问我,手握8万块钱预算能买什么车?对于这些网友的问题,其实我已经是回答过很多次了,但鉴于很多朋友还是会问,今天我就一口气给大家推荐5款在8万元预算左右买了不会错的…

    2022年7月25日
  • Java嵌入数据处理引擎:SQLite的挑战者esProc SPL

    很多免费开源数据处理引擎都可以嵌入 Java 应用中,其中 SQLite 历史悠久、用户众多;后起之秀 esProc SPL 功能也较强,下面对两者进行多方面的比较。 基本特征 语…

    2022年8月7日
  • 美团借钱还款是自动扣款吗 美团借钱还款规则揭晓

    美团借钱是正规的贷款平台。申请门槛相对很多的借贷产品来说,还是比较低的,但美团借钱是要按时还款的,那么美团借钱还款是自动扣款吗?下面来看介绍。 美团借钱是美团为客户提供的现金类消费…

    2022年9月16日
  • 当今社会为什么会有那么多补习班?不补课学生就无法学习好吗?

    这些观点不完全全对。 补习班和辅导班一码事,都是让孩子去学习。补习班只要符合办学条件,验收合格领证就是正规班。有需求就有市场,而且有时还报不上,不学又怕孩子跟不上。特别是幼儿升小学…

    2022年4月2日
  • 没下限?LOL职业联赛10人对局9人假赛,还没打完就被观众举报了

    大家好,这里是正惊游戏,我是你们最爱吃瓜的小弟。 经过了多年的发展,《LOL》已经从单纯的一个游戏发展成了一项竞技运动,目前《LOL》的电竞项目已经入选了亚运会,并期望将电子竞技中…

    2022年8月13日
  • 生活-生下来,活下去(碎碎念)

    韩愈有句话——“业精于勤,荒于嬉”,时间的细沙在不断积累的同时也埋葬,拥有的不拿出来时不时地晒晒,还真的就成为埋在地下的回忆了。 今年开始写些文章来进行表达自己的言论,当我庆幸我不…

    2022年8月12日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息