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

Linux文件创建、删除、拷贝、移动

2017-01-10 09:07 507 查看
[b]创建文件命令:touch

[/b]创建的是没有任何内容的空文件。

如在当前目录创建没有任何内容的空文件: touch ./empty

注意事项:如果创建的文件已经存在的话,touch文件将会改变这个文件的时间撮属性,也即文件的最后修改时间属性  

拷贝文件

用法:cp [选项] [要拷贝的文件|文件列表|][目的文件名|目的目录]

 

将源文件复制至目标文件,或将多个源文件复制至目标目录。
拷贝单个文件:

          如将tmp目录下的file01拷贝到用户根目录下:cp  /tmp/fileo1 ~

          如将tmp目录下的file01拷贝到用户根目录下,并将其重命名为file01_bak: cp /tmp/file01 ~/file01_bak
拷贝多个文件:只需将多个文件名用空格隔开就行

          如将如将tmp目录下的file01、file02、file03、file04拷贝到用户根目录下:cp /tmp/file01 /tmp/file02 /tmp/file03 /tmp/file04 ~
拷贝整个目录:在cp命令后跟一个 -r 选项

        如将tmp中dir01目录拷贝到用户家目录中去:cp -r  /tmp/dir01 ~
使用cp命令注意事项1:如果在目标目录中已有同名文件存在,cp命令默认会先询问用户是否覆盖,用户同意后cp命令才会覆盖,若有批量同名文件显然是一件麻烦的事情,此时   在cp命令后跟一个 -f 选项,并在cp命令前键入一个 \ ,如:\cp -f /tmp/file01 /tmp/file02 /tmp/file03 /tmp/file04 ~

使用cp命令注意事项2:拷贝时文件属性,包括文件拥有者,文件从属组和访问权限位都有可能发生变化

       如以root用户的身份将tmp中的sample.sh文件拷贝到bcc用户的家目录中:cp /tmp/sample.sh ~nbcc

       发现拷贝后的文件拥有者何文件从属组属性都有nbcc变成了root,这将导致nbcc用户无法修改和执行这个文件。因此如果需要原原本本地将文件拷贝过来,还需要在命令后面跟上一个 -p 选项:cp -p /tmp/file01 ~nbcc ,此时拷贝过来的文件和原来的文件属性一模一样没有任何变化。当然使用 -p 选项的前提是登录用户对这个文件有写权限才行。


具体选项列表如下:


¨         -f       如果目标文件无法打开则将其移除并重试

 

¨         -i       覆盖前询问(使-n选项失效)

 

¨         -l       只创建硬链接文件而不复制文件

 

¨         -n     不覆盖已存在的文件(使-i选项失效)

 

¨         -p     复制时保留文件的访问权限,拥有者,文件组和时间戳

 

¨         -R     递归复制目录及其子目录内的所有内容

 

¨         -s      只创建符号链接而不复制文件

 
¨         -u     只在源文件文件比目标文件新,或目标文件不存在时才进行复制

删除命令:rm

是英文单词remove的缩写

用法:rm [选项][要删除的文件|文件列表|目录]

只要把要删除的文件放在rm后面即可,可以删除单个文件或多个文件,也可删除整个目录

删除单个文件:删除当前目录下的file01文件删除,如:rm ./file01


删除多个文件:
删除当前目录下的file02、file03、file04文件删除,如:rm ./file02 ./file03 ./file04

删除目录:需要在rm命令后跟一个 -R 选项,如 将当前目录下的dir01删除:rm -R ./dir01

注意事项:在默认情况下,rm删除文件时会询问是否真的删除,如果要批量删除时,则在rm命令后跟 -f 选项,让rm命令不询问直接删除,如:rm -fR ./dir02

选项列表如下:

¨         -f       强制删除。忽略不存在的文件,不提示确认

 

¨         -i       在删除前需要确认(默认选项)

 

¨         -R     递归删除目录及其内容



    移动命令:mv


      用法:mv [选项][要移动的文件|文件列表|目录][目的文件名名|目的目录]

mv命令即可以移动一个文件或多个文件或整个目录。

移动单个文件:如将tmp下file05文件移动到当前用户家目录中去:mv /tmp/file05 ~

移动多个文件:多个文件间用空格隔开:如将tmp下file05、file06、file07文件移动到当前用户家目录中去:mv /tmp/file05 /tmp/file06 /tmp/file07 ~

移动单个目录:与cp命令移动目录需要加-p不同,mv不需要加任何选项,如将tmp下dir02目录移动到当前用户家目录中:mv /tmp/dir02 ~

注意事项1:与cp命令相同,当mv移动文件时,如果遇到同名文件,默认会询问用户,若有批量同名文件存在的话,也同样在mv命令后使用 -f 选项,那么mv命令就会强制覆盖所有同名文件了

注意事项2:Linux中没有重命名命令,但是通过mv命令将文件或目录从当前路径移动到当前路径并将移动后的文件重命名即可实现重命名,如:mv ./flie08 ./file08_rename

选项列表如下:

¨         -f       覆盖前不询问

 

¨         -i       覆盖前询问

 

¨         -n     不覆盖已存在文件

 

¨         -u     只在源文件文件比目标文件新,或目标文件不存在时才进行移动

 

如果指定了-i、-f、-n 中的多个,仅最后一个生效。mv 没有-R 选项,mv可以直接移动目录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 文件操作
相关文章推荐