实用Linux命令(2)文件操作

在命令环境下对文件进行操作比在图形环境下操作更加快捷和高效。文件操作主要包括搜索文件、复制和移动文件、删除文件以及合并文件的内容等。

1 cat命令

格式:cat [选项][文件]……

功能:将[文件]或标准输入组合输出到标准输出,如果[文件]缺省,或者[文件]为-,则读取标准输入。

选项说明:

-n 或--number 从1开始对所有输出的行数编号。

-b 或--number-nonblank 与-n类似,但是不对空白行编号。

-s 或--squeeze-blank 当遇到连续两行以上空白行时,将其替换为一行空白行。

-E 在每行结束处显示$

例如,在当前用户目录htc中有文本文件file1和file2,要将文件file1的内容加上行号后输入到文件file2中,可作如下操作:

[htc@localhostday01]$cat -n file1>file2

但是要注意,这条命令会使file1中的内容把file2中的内容覆盖掉,是全部覆盖不是替换!如下命令结果:

[htc@localhost day01]$ cat file2

This is the first line in file2

This is the second line in file2

This is the third line in file2

[htc@localhost day01]$ cat file1

This is the first line in file1

[htc@localhost day01]$ cat -n file1>file2

[htc@localhost day01]$ cat file2

     1  This is the first line in file1

[htc@localhostday01]$

2 more 命令

格式:more[-dlfpcsu][-num][+/pattern][+linenum][file….]

功能:与cat类似,但它适合显示长文件清单或者文件清单,可以以一次一屏或者一个窗口的方式显示。按空格键继续显示下一页,按B(Back space)键显示上一页。

选项说明:

-d 用于提示用户,在屏幕下方显示[press space to continue,q to quit.],如果用户按错了键,则显示[press h for instructions.]

-l 取消遇到特殊字元^L(送纸字元)时会暂停的功能。

-f 计算行数,以实际行数为依据,而非以自动换行后的行数为依据。

-p 不易卷动的方式显示每一页,而是先清除屏幕,然后再显示内容。

-c 与p类似,但先显示内容,然后再清楚其他旧信息

-s 当遇到两行以上的空白行时,替换为一行空白行

-u 不显示下引号(根据环境变量TERM指定的terminal而有所不同)

+/ 在每个文件显示前搜寻该字符串(pattern),然后从该字串之后开始显示

-num 指定一次显示的行数

+num 从第num行开始显示

如:[htc@localhost day01]$ more -s +2 file1 命令表示从第二行起显示文件file1的内容,并且如果file1中存在连续两行以上的空白行,则只显示一行空白行。

3 less 命令

格式:less[Option]filename

功能:与more命令相似,都可以用与浏览文件内容,但是less除了可以用空格键向下显示文件外,还可以通过按方向键来滚动显示文件,要结合浏览,只需在提示符”:”下按下q键即可。由于less并未在一开始就读入整个文件,所以打开大文件时会比较快。

4 find 命令

格式:find[路径…][表达式]

功能:对某个特定的文件,某些特定的文件或者某种特定类型的文件进行检索,可以根据名称、类型、文件属主以及文件上次修改的时间等条件来检索文件。

选项说明:

-amin n 在过去n分钟内读取过的文件

-anewerfile 比文件file更晚被读取过的文件

-atime n在过去n天内读取过的文件

-cmin n 在过去n分钟内被修改过的文件

-ctime n在过去n天内被修改过的文件

-type c 查找文件扩展名是c的文件。另外,在-type参数后还可以设置其他参数,其中d表示目录,f表示一般文件,l表示符号链接等。

[htc@localhostday01]$ find -name "*.sh"  表示在当前目录和其子目录下查找扩展名为.sh文件,并显示出来。

5 touch 命令

格式:touch[选项]…文件…

功能:改变文件的时间记录

选项说明:

-a 改变文件的读取时间记录

-m 改变文件的修改时间记录

-c 如果目标文件不存在,不会建立新的文件

-r 使用参考文件的时间记录

-d 设定时间与日期,可使用各种不同的格式

-t 设定文件的时间记录,格式与date指令相同

-no-create不建立新文件

--help列出命令格式

--version列出版本信息

例如,要将当前目录中的file1文件的时间记录为2007年3月15日14:20 可用如下命令:[htc@localhost day01]$ touch -d "2:20pm 03/04/2007" file1

6 head 命令 tail 命令

head命令的功能是查看文件的开头部分, head -n file1 是查看file1 文件内容开头的n 行内容 ; head -cn file1 是查看file1 文件内容开头的n 个字符的内容  此外  head -v file1,表示查看file1的开头的10行内容,并且会在开头出显示这个文件的名字 也就是会把 file1显示出来;head -q file1,表示查看file1的开头的10行内容, 但不会在开头出显示这个文件的名字。与这个功能相反的是tail 命令 默认情况下是查看文件的后10行内容,这有助于查看日志文件的最后10行来阅读重要的系统信息,tail命令的参数也有 -n ; -cn; -v; -q等 此外, 还有一个-f  可以使tail 自动实时地把打开文件中的最新消息显示到屏幕上。

7 cp命令

格式:cp[Options]source dest 或者 cp[Options] source…directory

功能:将指定的源文件复制到目标文件,或者将多个文件复制到目标文件中。

选项说明:

-a 尽可能将文件状态、权限等信息都按原状态复制

-d 复制时保留链接

-f 如果目的地已经有相同文件名的文件存在,则在复制前先删除该文件再进行复制

-r 如果source中包含目录名,则将该目录下的文件也都复制到目的地

-i 与-f的作用相反,在覆盖目标文件之前给出提示并要求用户确认,若用户回答y则覆盖目标文件,因而是交互式的复制命令。

-p 此时,cp命令除了复制源文件的内容外,还将把其修改时间和访问权限也都复制到新文件中

-l 不做复制,只是链接文件

例如,将当前目录中的file1复制到到Desktop中,并重命名file2,可用如下命令:[htc@localhost Desktop]$ cp file1 ~/Desktop/file2

8 mv命令移动文件或改名

格式:mv [options] source dest 或者mv [options] source... directory

功能:将一个文件更名为另一个文件,或者将几个文件移动另一一个目录

选项说明:

-i 如果目的地已经有同名文件,则先询问是否覆盖旧文件

-f 禁止交互式操作,在mv操作将要覆盖某已有目标文件时,直接覆盖不提示

例如mv更名file1 为file5, 命令如:[htc@localhostDesktop]$ mv file1 file5, 则file1没有了 只有file5 了 此时mv同时具有移动和更名的作用。

例如mv 把file1,file2,file3,file4同时移动到当前目录的子目录subdir中的命令:[htc@localhost Desktop]$ mv file[1-4] ./subdir

9 rm命令

格式:rm[选项]… 文件…

功能:删除指定的文件。该命令可以删除目录中的一个或者多个文件或者目录,也可以将某个目录及其下所有的文件和子目录都删除掉。对于链接文件,删除后只是断开了链接,原文件保存不变。

选项说明:

-i 在删除文件前逐一询问确认

-f 即使原文件的属性为只读,也直接删除,无需逐一确认

-r 将目录及该目录下的文件都删除掉

特别注意的是,rm一旦把文件删除掉了,就不能再恢复了,所以用rm命令时要小心。指定被删除的文件列表中,如果含有目录,则必须加上 -r 或 -R 命令才能删除

10 rmdir命令

rmdir命令只能删除空目录。当要删除非空目录时,需要使用带有 -R 选项的rm指令。rmdir指令的-p选项可以递归删除指定目录树,但是要求每个目录必须是空目录。例如:rmdir -p -v /dir1/dir2/dir3, 这条命令将依次删除dir3,dir2,dir1并将详细信息显示到命令上, 前提是这个dir1-3是空目录

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值