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

linux文件基本操作

2013-12-10 12:29 176 查看
一、linux的文件的分类文件类型 表示符号普通文件 -目录 d(directory)符号链接/软链接 l(link)块设备 b(block)管道 p(pipe)套接字 s(socket)

二、创建文件创建文件的方法很多,但是思想是差不多的。1、用文件编辑器创建:编辑器 + 文件名,如果文件名已经存在则直接打开,如果不存在就创建之后打开。比如vim 123.php2、用touch命令创建,touch命令的本意是‘触摸’一下文件,使其时间戳改变,但是如果要‘触摸’的不存在则创建该文件

三、查看文件内容1、cat和tac:cat查看整个文件,将文件内容从头到尾全部打印在屏幕,如果文件很长就只能看见后面的。tac和cat类似,将文件从未到头打印,其他与cat完全相同2、less这个命令比较好用,less + $filename,将文件内容从头开始打印,刚刚打印一屏。当文件打印一屏后就有几个操作:向下翻页:j键或者Shift+PageDown向上翻页:k键或者Shift+PageUp退出查看:q键搜索关键字:/keyword从头开始搜索keyword:?keyword从尾向前搜索keyword搜索出结果之后小n键:朝你搜索的方向调至下一个,比如你说从头向尾搜索,则是从头向尾下一个,反之亦然。大N键:朝你搜索的方向调至上一个,比如你说从头向尾搜索,则是从尾向头下一个,反之亦然。3、more more与less的功能和操作一样,有一个不同点。如果用less查看文件内容,不管文件内容多与少都不会自动退出文件内容页面,任何时候都可以上下翻页,直至按q键退出。more则不同,如果你已经翻页至文件尾部会自动退出退出而进入命令提示符,就不能往前翻页了。4、head与tail从英文单词就看出来,一个是看头部,一个是看尾部。这两个命令有一个参数 -n 就是从头或从尾看出几行,如果不指定默认是10行。 比如:head -n 5 123.php 就是查看123.php的前5行内容,也可以简写去掉n,就成了 head -5 123.php,tail也是一样的。

四、移动和复制文件1、文件复制 cp(copy简写)这个命令要仔细讨论一下几种情况:(1).当要复制的文件时单个文件时cp /path/to/file /path/to/name当name为一个已经存在的文件时,则会覆盖这个文件当name不存在时,则复制并重命名为name当name为目录是,将会把file复制到name之中(2).当要复制的文件时多个文件时cp /path/to/file ... /path/to/name这种情况下最后的/path/to/name必须为目录,否则报错(3).当要复制的文件为目录时如果之前复制目录,那么cp会略过目录,这是就需要加一个参数 -r或-R(recursive)递归复制,ok搞定2、移动文件仔细学习了cp,这个移动文件就没什么好讲的了,操作基本一样,一个保留源文件,另一个不保留源文件 注意:这里只是介绍了移动和复制文件时的几种常见,命令的详细参数可以man一下,有详细说明

五、删除文件删除普通文件用rm命令,删除目录用rmdir命令,但是rmdir只能删除空目录,说很少使用,常使用rm,我们先man一下rm命令:
NAME
rm - remove files or directories
SYNOPSIS
rm [OPTION]... FILE...
DESCRIPTION
This  manual  page  documents the GNU version of rm.
rm removes each specified file.
By default, it does not remove directories.
If the -I or --interactive=once option is given,
and there are more than three  files
or the -r, -R, or --recursive are given, then rm prompts
the user for whether to pro-
ceed with the entire operation.  If the response is not
affirmative, the entire  com-
mand is aborted.
Otherwise,  if  a  file  is  unwritable,  standard input is
a terminal, and the -f or
--force option is not given, or the -i or --
interactive=always option  is  given,  rm
prompts the user for whether to remove the file.  If the
response is not affirmative,
the file is skipped.
这个命令操作比较简单rm 选项 要删除的文件这里要删除的文件可以是单个文件,也可以是多个文件。重点说说选项删除一个普通文件无需任何参数即可rm file如果要删除的是目录,则会提醒你这是一个目录,然后不删除,这是需要加一个参数-r或者-R,rm -r dirname有时候会提示你是否删除,如果你不想看提示而直接删除则加一个参数-f(force)rm -rf dirname

六、技巧提升---bash通配符在bash中支持通配符,比如*表示一个或多个字符ls *.txt 则显示所有已.txt结尾的文件或者目录通配符使用方法和场景都差不多,比如复制,移动,删除还有查找等这里列出平时常用的通配符*:任意长度的任意字符;?: 任意单个字符;[]: 指定范围内的任意单个字符;[a-z][0-9]: 所有的数字[a-z]:所有的小写字母[A-Z]:所有的大写字母[a-zA-Z]:所有的字母[0-9a-zA-Z]:所有的数字和字母字符集合:[:digit:] : 所有数字, 相当于0-9[:lower:]:所有的小写字母[:upper:]:所有的大写字母[:alpha:]: 所有的字母[:alnum:]: 相当于[0-9a-zA-Z][:space:]: 空白字符[:punct:]:所有标点符号注意:[a-zA-Z]这类型的不区分大小写 字符集合中,[]是这个符号的本身,而不是上面所说的任意耽搁字符 比如我们要表示[0-9]则是[[:digit:]]举例:1.查找以数字结尾的文件ls *[0-9] 2.查找以大写字母开头的文件 ls [[:lower:]]*

本文出自 “花满楼” 博客,请务必保留此出处http://becaning.blog.51cto.com/7548193/1338796
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: