LINUX文件操作命令
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;} th{border: 1px solid gray; padding: 4px; background-color: #DDD;} td{border: 1px solid gray; padding: 4px;} tr:nth-child(2n){background-color: #f8f8f8;}
| 文件的硬链接:相当于一个文件的两个副本,指向同一数据存储区
特点:
两个文件,长度相等,总长度不变
删除其中一个文件,另一个仍然存在
修改其中一个文件,另一个也修改
|
文件的符号链接: 相当于一个文件的快捷方式
特点:
仅保存一个指针,长度小于原文件
删除符号链接,不影响原文件
删除原文件,符号链接即没有意义
|
| ln 命令– link 功能:产生链接文件
用法:ln –s 来源文件 目标文件
加-s参数:symbolic link
不加-s参数:hard link
范例:
ln –s /bin/less /usr/bin/less //第一种方式,链接到其他目录
ln myfile mylinkfile //第二种方式,链接到其他文件
//红色表示这个链接失效了
|
whereis – where is file ? 作用:查找文件或目录位置
说明:whereis并不进行磁盘级的查找,只是在 $PATH 所设定的路径中去查找
范例:whereis ls
//ln 第二种方式
|
| 改变目录或文件的权限
chmod ls –l 长格式列出文件或目录的基本信息如下:
文件类型与权限 链接数 文件所有者 文件属组 文件大小 最近修改的时间 名字
对于权限,有第一组表示文件所有者的权限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字符分别表示对文件的读、写和执行权限。可以通过chmod来修改权限。
|
1. 文字设定法 chmod [who][+|-|=][mode] 文件名 //修改指定文件名中who的权限增加/去除/赋值为mode
参数:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件所有者有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。即chmod +x 1.c表示所有人都有可执行的权限。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置 mode 所表示的权限可用下述字母的任意组合(当组合的时候,who不能少):
r 可读
w 可写
x 可执行
文件名:以空格分开的要改变权限的文件列表,支持通配符。
在一个命令行中可给出多个权限方式,其间用逗号隔开。
例如:chmod g+r,o+r example [chmod go+r example]使同组和其他用户对文件 example 有读权限 |
| 2. 数字设定法 0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。 例如:chmod go+r example 等价于 chmod 044 example |
| 文件查找
find
命令:find 起始目录 查找条件 操作
功能:在指定目录结构中搜索文价,并执行指定的操作。
该命令的查找条件可以是一个逻辑运算符 not、and、or 组成的复合条件。
|
and :逻辑与,在命令中用 -a 表示,表示只有当所给的条件都满足时,查找条件才满足。
例如在 “/home/user”目录下查找名为 0718 类型是一个目录的文件。则使用
find /home/user –name 0718 –a -type d
or :逻辑或,在命令中用 -o 表示,表示只要所给的条有一个满足,查找条件就满足。例如在“/home/user”目录下查找名字为main.cc 或名字为 main.c的文件。则使用
find /home/user -name main.cc -o -name main.c
not :逻辑非,在命令中用 !表示查找不满足所给条件的文件。例如在“/home/user“下查找名字不是main.c的文件,则使用
find /home/user ! –name main.cc |
|
根据名称和文件属性查找:
-name ’字串’ 查找文件名匹配所给字串的所有文件,字串内可用通配符 *、?、[ ]
eg: find *.txt //查找当前目录下所有以txt结尾的文件。
[] 表示 通配括号里面的任意一个字符
? 表示 通配任意的单个字符
find [12].txt // [1-9] //匹配多个1.txt~9.txt
find 1.tx?
-gid n 查找属于ID号为n的用户组的所有文件。
-uid n 查找属于ID号为n的用户的所有文件。
-group ’字串’ 查找属于用户组名为所给字串的所有的文件。
-user ’字串’ 查找属于用户名为所给字串的所有的文件。
-empty 查找大小为0的目录或文件。
-perm 权限 查找具有指定权限的文件和目录,权限的表示可以如711,644。
-size n[bckw] 查找指定文件大小的文件,n后面的字符表示单位,缺省为b,代表512字节的块
-type x 查找类型为x的文件,x为下列字符之一:
b 块设备文件
c 字符设备文件
d 目录文件
p 命名管道(FIFO)
f 普通文件
l 符号链接文件(symbolic links)
s socket文件
|
根据时间查找:
-amin n 查找n分钟以前被访问过的所有文件。(+表示n分钟之前,-表示n分钟之内,+号和-号都不能省略)
-cmin n 查找n分钟以前文件状态被修改过的所有文件。
-mmin n 查找n分钟以前文件内容被修改过的所有文件。
-atime n 查找n天以前被访问过的所有文件。
-ctime n 查找n天以前文件状态被修改过的所有文件。
-mtime n 查找n天以前文件内容被修改过的所有文件。
|
|
可执行的操作:
-exec 命令名称 {} :对符合条件的文件执行所给的Linux 命令,而不询问用户是否需要执行该命令。{}表示命令的参数即为所找到的文件;命令的末尾必须以“ \;”结束。
例如,在“/home/user“目录下查找名为main.c文件并显示这些文件的详细信息,则使用
find /home/user –name main.c -exec ls –l {} \;
-ok 命令名称 {} :对符合条件的文件执行所给的Linux 命令,与exec不同的是,它会询问用户是否需要执行该命令。
find -name 1.txt -ok cat {} \;
|
-ok 命令名称 {} :对符合条件的文件执行所给的Linux 命令,与exec不同的是,它会询问用户是否需要执行该命令。
find -name 1.txt -ok cat {} \;
find /home/luke -name main.c | xargs ls -l
find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。这样它可以先处理最先获取的一部分文件,然后是下一批,并如此继续下去。
在有些系统中,使用-exec选项会为处理每一个匹配到的文件而发起一个相应的进程,并非将匹配到的文件全部作为参数一次执行;这样在有些情况下就会出现进程过多,系统性能下降的问题,因而效率不高;
而使用xargs命令则只有一个进程。另外,在使用xargs命令时,究竟是一次获取所有的参数,还是分批取得参数,以及每一次获取参数的数目都会根据该命令的选项及系统内核中相应的可调参数来确定。
|
| 搜索文件内容grep: 命令:grep [选项][查找模式][文件名1,文件名2,…]
功能:grep过滤器查找指定字符模式的文件,并显示含有此模式的所有行。被寻找的模式称为正则表达式。
常用的一些正则表达式:
^ :以什么开头 ,例如 ls –l | grep ^d 显示当前目录下的所有子目录的详细信息。
$ :以什么结尾 。例如 ls –l | grep c$ 显示当前目录下以c结尾的文件。
常用的参数:
-E 每个模式作为一个扩展的正则表达式对待。等价于 egrep,使用最新的正则表达式
-F 每个模式作为固定的字符串对待
-c 只显示匹配行的数量。
-i 比较式不区分大小写。
-n 在输出前加上匹配串所在的行号。
|
| wc(Word Count) 命令格式: wc [选项]文件...
命令功能: 统计指定文件中的字节数、字数、行数,并将统计结果显示输出。该命令统计指定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。
命令参数:
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。
|
| umask 指文件(0666)或目录(0777)创建时在全部权限中要去掉的一些权限,普通用户缺省时umask的值为002,超级用户为022。所以默认创建一文件以后,普通用户缺省的权限为664,超级用户为644;创建一目录以后,普通用户缺省的权限为775超级用户755;umask查看当前缺省掩码,umask 001设置当前掩码为001 |
LINUX文件操作命令的更多相关文章
- linux文件操作命令--转
引用地址:http://bbsunchen.iteye.com/blog/1010993 想自己一开始处理文件的时候,看文件有多少行,都要写个perl脚本,好不麻烦啊...以此文纪念自己傻逼的科研生活 ...
- linux 文件操作命令
目录操作命令 命令格式 命令 [-选项] [-参数] ls -la /etc 有多个选项时可以合并 ls命令: -a (all) 显示所有文件,包括隐藏文件,那是用.开头的文件 为什么要隐藏(这是个系 ...
- linux 文件操作命令 touch、cat、more、less、head、tail
touch /bin/touch 创建空文件 linux 创建文件可以使用特殊符号,/除外 touch test test1 创建了两个文件touch "test test1" 创 ...
- 0020 Linux 文件操作命令
1. 创建文件 touch 文件名 2. 删除文件 rm 文件名 3. 复制文件 cp 源文件 目录 4.剪切文件 mv 源文件 目标文件 5.重命名文件 mv 源文件名 新文件名 6.改变文件权限 ...
- Linux 文件操作命令-Linux基础环境命令学习笔记
1.文件目录操作 1)路径识别 a.绝对路径,以根目录开始 b.相对路径,以当前目录开始,不需从根目录开始写起 2)命令 man ls 查看ls命令帮助 cd /var/log 切换进入log目录(. ...
- 个人常用Linux文件操作命令
本文只记录个人工作中最常用到的命令. 关机和用户 shutdown -h now 关机 reboot 重启 sync 非正常关机前执行,强制将内存缓冲区中的数据立即写入磁盘中 logout 注销 ...
- Linux文件操作命令并举例说明其作用
ls ,常用于查看当前文件下有工作中需要的文件 cd, 常用于进行切换文件的位置 vim,常用于编辑软件系统相关的配置文件 ps –ef|grep jdk,常用语显示跟jdk有关的进程 |:表示 ...
- 【Linux学习】Linux文件系统3—文件操作命令
Linux文件系统3-文件操作命令 Linux文件操作命令主要有: cd: 改变目录位置 pwd: 显示当前目录的绝对路径 ls: 显示文件名称.属性等 -a 列出全部文件 -l 列出 ...
- Linux学习笔记之Linux用户与用户组、文件操作命令、文件权限剖析
1.用户与用户组 Linux是一个多用户操作系统,通过用户与用户组的概念,可以实现保证安全性和隐私性.任何一个文件都具有User.Group.Others三个权限. 文件拥有者(Linux下所有的东西 ...
随机推荐
- angular4.0使用JSONP数据请求
ng4中有很多获取数据的API,为了满足跨域的需求,我选择JSONP模块: 应该有很多小伙伴遇到这个报错吧 injected script did not invoke callback: 下面我写个 ...
- jQuery源码解析资源便签
最近开始解读jQuery源码,下面的链接都是搜过来的,当然妙味课堂 有相关的一系列视频,长达100多期,就像一只蜗牛慢慢爬, 至少品读三个框架,以后可以打打怪,自己造造轮子. 完全理解jQuery源代 ...
- display:box;display:flex;弹性盒模型
display:box:display:flex:弹性盒模型 非常适用于移动端.PC端高级浏览器,效果也很好. display: -webkit-box; display: -moz-box; dis ...
- mysql目录迁移 更改mysql的存储目录
元旦节刚过完回来,忙了一天,现在的时间剩余不是很充足,所以更新简短的文章一篇! 正文: 正常情况下mysql的存储目录都是在/var/lib/mysql/下的,那么怎么将存储位置改到/data_mys ...
- C盘无损扩容
工具: 分区助手专业版5.5 下载地址:http://pan.baidu.com/s/1slHPGDn 步骤 打开分区助手,点"扩展分区向导". 弹出对话框,因为是扩展C盘所以选& ...
- 【Dijkstra堆优化】洛谷P2243电路维修
题目背景 Elf 是来自Gliese 星球的少女,由于偶然的原因漂流到了地球上.在她无依无靠的时候,善良的运输队员Mark 和James 收留了她.Elf 很感谢Mark和James,可是一直也没能给 ...
- ActiveMQ进阶学习
本文主要讲述ActiveMQ与spring整合的方案.介绍知识点包括spring,jms,activemq基于配置文件模式管理消息,消息监听器类型,消息转换类介绍,spring对JMS事物管理. 1. ...
- Python全栈考试(一)
1.执行 Python 脚本的两种方式 1) 使用命令行执行Python脚本: python C:\tesst.py 2) 使用各种IDE软件.pycharm wing 2.简述位.字节的关系 位 ( ...
- 一个通用的makefile(一)
最近在编写Android编译系统时,需要遍历每一个目录下每一个文件夹下的makefile,网上的方法有些繁琐 :就直接贴上自己遍历子目录深度为1:(for temporary)(之后会继续更新) 下 ...
- 【测试编码URI的函数】
//测试编码URI的函数 var url="http://www.phpfamily.org/test.php?search= this is a test&sum=1+2" ...