您的位置:首页 > 运维架构 > Shell

linux bash shell常用文件操作命令

2016-11-07 15:41 399 查看
touch命令

主要用于创建空文件,修改已有文件的访问时间和修改时间而不改变文件内容。

用法:touch+文件名 如果文件不存在,创建一个空的文件,如果已存在,则修改此文件的修改时间为当前时间。

touch -a +文件名 只改变访问时间 touch -m + 文件名 只改变修改时间

默认情况下,touch使用当前时间,可以touch -t 时间戳 +文件名 指定时间

cp命令

主要用于复制文件。

用法:cp [参数] 源对象 目标对象

关于参数:

-a 归档文件,并保留他们的现有属性

-b 创建已存在目标文件的的备份,而非覆盖它。

-d 保留

-f 强制覆盖已存在文件,不提示

-i 如果要复制的文件已存在,覆盖目标文件之前提示

-l 创建文件链接而非复制文件(硬链接,只可在同文件类型系统之间使用)

-p 如果可能,保留文件属性

-r 递归的复制文件

-R 递归的复制目录

-s 创建一个符号链接而非复制文件(软链接,可在不同类型文件系统之间使用)

-S 覆盖默认的备份文件的后缀(默认为~)

-u 仅在源文件比目标文件新的情况下复制(相当于更新)

-v 详细模式,解释到底发生了什么

-x 仅限于当文件系统复制(Linux可同时挂载多个不同的文件系统类型的存储设备)

注:linux系统中,如果要在系统上维护同一文件的两份或者多份副本,除了保存多份单独的物理文件副本之外,还可以采用保存一个物理文件副本
和多个虚拟副本的方法,这种虚拟副本就称为链接,链接是目录中指向文件真实位置的点位符,linux中有两种不同类型的文件链接:符号链接(
即软链接)和硬链接。硬链接会创建一个独立文件,其中包含了源文件的信息以及位置,引用硬链接文件等同于引用了源文件。软链接有自己独立的
文件索引节点号(硬链接的文件索引节点号与源文件相同,实质上相当于一个文件),Linux系统将软连接文件当做一个单独的文件。如果想链接文件
可用ln命令代夫cp命令,默认情况下,ln会创建硬链接,如果想要创建软链接,仍然要加-s参数。

注:如果复件的源文件为链接文件,那么复制后的目标文件其实还是源链接文件所链接文件的副本,而不是该链接文件的副本。


mv命令

在Linux中,重命名文件称为移动(moving)。mv命令就是用来将文件和目录移动到另一位置的。

用法:mv 要操作的文件 目标文件

注:移动文件会改变文件名(当然也可以不改变名称,只改变位置),但保持同样的索引节点号和时间戳。所以,对于移动存在硬链接的文件没什么影响,

但是对于存在软链接的文件,此文件的软链接文件将会变为无效链接文件。

rm命令

主要用于删除文件,bash shell中没有回收站或者垃圾箱,所以文件一旦删除,就无法再找回了。

用法:rm [参数] 要删除的文件

常用参数:

-i 删除前提示

-f 强制删除

-r 递归删除

注:如果删除文件存在链接文件时,此文件一旦删除,所有软链接文件即变为无效链接文件,但是对硬链接文件,其采用同源文件同样的文件索引节点号
,硬链接会一直维持这个索引节点号来保留数据,直到指向此索引节点的所有文件都被删除。


mkdir命令

创建目录命令。

用法:mkdir 目录名称

rmdir命令

删除目录。默认只能删除空的目录,如果要删除非空的目录:

(1)rmdir –ignore-fail-on-non-empty 目录名称(不报错,但是好象没有删除掉)

(2)rm -r 目录名称(-r 递归删除,加-f不提示,直接删除)

stat命令

提供文件系统上某个文件的所有状态信息。

用法:stat 文件名

file命令

查看文件类型。

用法:file 文件名

注:file命令将文件分为三类:(1)文本文件:包含可打印字符的文件(2)可执行文件:可在系统上运行的文件(3)数据文件:包含不可打印二进制

字符,又不能在系统上运行的文件。

cat命令

显示文本文件中的所有内容。

用法:cat [参数] 文件名

常用参数:

-n 给所有行加上行号包含空格行

-b 只给有文本的行加行号

-s 将显示内容中的多个空白行压缩到单个空白行。

-T 忽略制表符,不让其出现,全部替换成^。

more命令

显示文本文件内容,但是每次只显示一页就会停下来,然后等待其子命令的输入。

其常用子命令:

h 显示帮助菜单

空格键 显示文件文本的下一屏

z 显示文件文本的下一屏

ENTER键 显示文件文本的下一行

d 显示文件文本的后面半屏

q 退出程序

s 显示文件文本的下一行

f 显示下一屏文件文本

b 显示上一屏文件文本

/表达式 在文件中查找匹配文本表达式的内容

n 在文件中查找下一处匹配已指定表达式的内容

, 跳到匹配指定表达式的第一处内容

!cmd 执行shell命令

v 在当前行启动vi编辑器

= 显示当前行在文件中的行号

. 重复执行前一个命令

less命令

more命令的升级版本。用法基本同more命令一样,支持上下左右和翻页键,新增子命令可通过man less命令查看

tail命令

显示文件尾部部分的内容,默认显示10行,可以通过参数指定显示的行数。

用法:tail [参数] 文件名

常用参数:

-c bytes 显示文件最后的bytes个字节的字符(tail -c 10 examp.txt)

-n lines 显示文件的最后lines行

-f 让tail程序一直保持活跃状态,如有新内容添加到文件末尾则显示出来,常用于查看实时日志

–pid=PID 和-f参数一起,跟踪一个文件直到进程ID为PID的进程结束

-s sec 和-f参数一起,在每次循环输出之间休眠sec秒

-v 总是显示带文件名的头

-q 从不显示带文件名的头

head命令

与tail命令相对,显示文件开头那些行的内容,同样默认显示10行数据,只是文件开头10行,也支持通过-c和-n

指定要显示字符数或者是行数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux shell 文件