Linux文件类型(学习笔记六)
一、Linux下的文件类型
- 普通文件:在由 ls –al 所显示出来的属性方面,第一个属性为 [ - ]
- 目录文件:在由 ls –al 所显示出来的属性方面,第一个属性为 [ d ]
- 设备文件:一般都在dev目录,有[b][c]
二、普通文件
2.1、文本文件
以ASCII码形式存储在计算机中
2.2、二进制文件
以文本的二进制形式存储在计算机中,如声音,图像等,只有通过相应的软件才能将其显示出来
2.3、连接文件
就是类似 Windows 底下的快捷方式啦!第一个属性为 [ l ];
三、目录文件
设计目录文件的主要目的是用于管理和组织系统中的大量文件,它存储一组相关文件的位置,大小与文件 有关的信息目录文件简称目录
四、设备文件
设备文件是Linux系统很重要的一个角色,Linux把每个I/O设备看成一个文件,与普通文件一样处理,这样可以使用文件 与设备的操作尽可能统一,从用户角度来看,对I/O设备的使用和一般文件使用一样,用户不必了解I/O细节,
设备文件又为块设备、和字符设备
4.1、块设备
成块读取数据的设备,硬盘,内存等 就是一些储存数据,以提供系统存取的接口设备,简单的说就是硬盘啦!
例如你的一号硬盘的代码是 /dev/hda1 等等的文件啦!第一个属性为 [ b ]
4.2、字符设备
亦即是一些串行端口的接口设备,例如键盘、鼠标等等!第一个属性为 [ c ]。
五、文件相关的一些命令
5.1、touch
创建新文件
touch /data/text.txta ls /data 查看 或者进入/data目录后,再创建 cd /data touch text.txt 创建多个文件 touch .txt .txt .txt 或者 touch {a,b,c,d}.txt touch /data/{q,w,e,r,t,y}.txt 大于号创建 >c.txt 重定向 ehco > a.txt
5.2、cp
复制文件或者目录
cp a.txt test4 //复制文件到test4文件下
[root@model Documents]# cp a.txt hh.txt test test4/ -i
cp: overwrite `test4/a.txt'? y //有相同文件是提示覆盖
[root@model Documents]# ll test4 //查看tests4目录
total
-rw-r--r--. root root Feb : a.txt
-rw-r--r--. root root Feb : hh.txt
-rw-r--r--. root root Feb : test
[root@model Documents]#
[root@model Documents]# cp test4/ tests/ -rip //将test4整个目录cp到tests目录下
[root@model Documents]# ls tests/
a.txt c.txt test1 test4 x.txt z.txt
[root@model Documents]# ll tests/
total
-rw-r--r--. root root Feb : a.txt
-rw-r--r--. root root Feb : c.txt
drwxr-xr-x. root root Feb : test1
drwxr-xr-x. root root Feb : test4
-rw-r--r--. root root Feb : x.txt
-rw-r--r--. root root Feb : z.txt
[root@model Documents]#
5.3、rm
删除文件或者目录
[root@model Documents]# ll
total
-rw-r--r--. root root Feb a.txt
drwxr-xr-x. root root Feb com
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb file1.txt
-rw-r--r--. root root Feb file2.doc
-rw-r--r--. root root Feb hh.txt
-rw-r--r--. root root Feb n.txt~
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb test1
drwxr-xr-x. root root Feb test4
drwxr-xr-x. root root Feb tests
[root@model Documents]# rm -rf n.txt~ //删除文件不提示
[root@model Documents]# ll
total
-rw-r--r--. root root Feb a.txt
drwxr-xr-x. root root Feb com
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb file1.txt
-rw-r--r--. root root Feb file2.doc
-rw-r--r--. root root Feb hh.txt
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb test1
drwxr-xr-x. root root Feb test4
drwxr-xr-x. root root Feb tests
[root@model Documents]#
ls
a.txt dir2 file2.doc test test4
com file1.txt hh.txt test1 tests
[root@model Documents]# rm hh.txt //删除文件会默认提示
rm: remove regular empty file `hh.txt'? y
[root@model Documents]#
[root@model Documents]# ll test5
total
-rw-r--r--. root root Feb : .txt
-rw-r--r--. root root Feb : .txt
-rw-r--r--. root root Feb : .txt
-rw-r--r--. root root Feb : .txt
-rw-r--r--. root root Feb : .txt
[root@model Documents]# rm -rf test5 //删除整个目录不提示文件一起删除
[root@model Documents]# ll
total
-rw-r--r--. root root Feb a.txt
drwxr-xr-x. root root Feb com
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb file1.txt
-rw-r--r--. root root Feb file2.doc
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb test1
drwxr-xr-x. root root Feb test4
drwxr-xr-x. root root Feb tests
[root@model Documents]#
5.4、mv
移动文件或者目录
常用参数:
-b :若需覆盖文件,则覆盖前先行备份。
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
-u :若目标文件已经存在,且 source 比较新,才会更新(update)
[root@model Documents]# ll
total
-rw-r--r--. root root Feb a.txt
drwxr-xr-x. root root Feb com
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb file1.txt
-rw-r--r--. root root Feb file2.doc
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb test1
drwxr-xr-x. root root Feb test4
drwxr-xr-x. root root Feb tests
[root@model Documents]# mv a.txt b.doc //文件重命名
[root@model Documents]# ll
total
-rw-r--r--. root root Feb b.doc
drwxr-xr-x. root root Feb com
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb file1.txt
-rw-r--r--. root root Feb file2.doc
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb test1
drwxr-xr-x. root root Feb test4
drwxr-xr-x. root root Feb tests
[root@model Documents]#
[root@model Documents]# ls
b.doc dir2 file2.doc test1 tests
com file1.txt test test4
[root@model Documents]# mv b.doc test4/yy.txt //移动文件并重命名
[root@model Documents]# ll test4/
total
-rw-r--r--. root root Feb a.txt
-rw-r--r--. root root Feb hh.txt
-rw-r--r--. root root Feb test
-rw-r--r--. root root Feb yy.txt
[root@model Documents]#
[root@model Documents]# ll
total
drwxr-xr-x. root root Feb com
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb file1.txt
-rw-r--r--. root root Feb file2.doc
-rw-r--r--. root root Feb test
drwxr-xr-x. root root Feb test1
drwxr-xr-x. root root Feb : test4
drwxr-xr-x. root root Feb tests
[root@model Documents]# mv dir2/ test1/ //移动整个文件夹
[root@model Documents]# ll test1/
total
-rw-r--r--. root root Feb a.txt
-rw-r--r--. root root Feb b.txt
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb n.txt
drwxr-xr-x. root root Feb : test2
[root@model Documents]#
5.5、find
查找文件或者目录
- -name:可以用通配符来查找如:* ?
- -size:可以用+,-来设置大小+表示大于多少,-表示少于多少
- -user:属于哪个用户
- -type:文件类型,普通文件有f,目录用d,块设备用b,字符设备用c
[root@model Documents]# find /etc/ -name resol*.conf //-name使用
/etc/resolv.conf
/etc/sysconfig/networking/profiles/default/resolv.conf
[root@model Documents]#
[root@model Documents]# find /boot/ -type d //-type使用查找boot目录下的所有目录
/boot/
/boot/efi
/boot/efi/EFI
/boot/efi/EFI/redhat
/boot/lost+found
/boot/grub
[root@model Documents]#
//查找当前目录中属于root用户的.txt的所有文件
[root@model test1]# ll
total
-rw-r--r--. root root Feb a.txt
-rw-r--r--. root root Feb b.txt
drwxr-xr-x. root root Feb dir2
-rw-r--r--. root root Feb n.txt
drwxr-xr-x. root root Feb : test2
[root@model test1]# find ./*.txt -user root
./a.txt
./b.txt
./n.txt
[root@model test1]#
5.6、which
查找命令文件的位置
//查找命令所在位置
[root@model test1]# which ls
alias ls='ls --color=auto'
/bin/ls
[root@model test1]# which cat
/bin/cat
[root@model test1]# which rm
alias rm='rm -i'
/bin/rm
[root@model test1]# which touch
/bin/touch
[root@model test1]# which mv
alias mv='mv -i'
/bin/mv
[root@model test1]#
5.7、file
查看文件类型
[root@model test1]# file a.txt
a.txt: ASCII text
[root@model test1]# file dir2/
dir2/: directory
[root@model test1]#
[root@model test1]# file ls
ls: cannot open `ls' (No such file or directory)
[root@model test1]# which ls
alias ls='ls --color=auto'
/bin/ls
[root@model test1]# file /bin/ls
/bin/ls: ELF -bit LSB executable, x86-, version (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6., stripped
[root@model test1]# file /etc/init.d/network
/etc/init.d/network: Bourne-Again shell script text executable
[root@model test1]# file /dev/sda1
/dev/sda1: block special
[root@model test1]# file /dev/lp3
/dev/lp3: character special
[root@model test1]#
5.8、ln
建立快捷方式:硬连接和符号连接(软件连接)
不能对目录,创建硬连接,也不能跨越分区创建硬链拉文件
创建软件连接时需要加参数[-s]
如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件
[root@model Downloads]# ln ../Documents/test1/a.txt
[root@model Downloads]# ll
total
-rw-r--r--. root root Feb a.txt
Linux文件类型(学习笔记六)的更多相关文章
- Linux文件权限学习笔记
文件权限共10个字符,第一个字符表示该文件是[文件夹]或[文件]——如果是字符“d"则表示该文件是文件夹:如果是字符“-”则表示是文件. 后九个字符,三个一组,共三组,分别表示[所有者权限] ...
- Linux System Programming 学习笔记(六) 进程调度
1. 进程调度 the process scheduler is the component of a kernel that selects which process to run next. 进 ...
- linux命令学习笔记(24):Linux文件类型与扩展名
Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序 而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux ...
- java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)
java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...
- Linux学习笔记(六) 进程管理
1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID, ...
- 兄弟连Linux运维学习笔记
最新经典linux运维兄弟连Linux运维学习笔记... --------------- 全程1.5倍播放.加油我一定可以学完Linux----------------------Unix与Linux ...
- 【opencv学习笔记六】图像的ROI区域选择与复制
图像的数据量还是比较大的,对整张图片进行处理会影响我们的处理效率,因此常常只对图像中我们需要的部分进行处理,也就是感兴趣区域ROI.今天我们来看一下如何设置图像的感兴趣区域ROI.以及对ROI区域图像 ...
- Spring Boot 学习笔记(六) 整合 RESTful 参数传递
Spring Boot 学习笔记 源码地址 Spring Boot 学习笔记(一) hello world Spring Boot 学习笔记(二) 整合 log4j2 Spring Boot 学习笔记 ...
- Java IO学习笔记六:NIO到多路复用
作者:Grey 原文地址:Java IO学习笔记六:NIO到多路复用 虽然NIO性能上比BIO要好,参考:Java IO学习笔记五:BIO到NIO 但是NIO也有问题,NIO服务端的示例代码中往往会包 ...
随机推荐
- Window 下安装
Window 下安装 下载地址:https://github.com/MSOpenTech/redis/releases Redis 支持 32 位和 64 位.这个需要根据你系统平台的实际情况选择, ...
- Redis中文API地址
地址:http://redis.readthedocs.org/en/2.4/string.html
- jquery常用写法简单记录
好久不写东西了......话不多说,主要记录一下,最近做的项目中用到的js的记录(虽然特别特别简单) 一 jquery常用写法记录 jQuery(this).addClass("select ...
- KVM资源划分分配技巧
kvm有个叫做超分的概念,根据这个特性可以分配出超出物理机配置的数台虚拟机. 以下是自己总结的一些划分技巧: 一.最保守方法(性能最好) 根据物理机的资源,按虚拟机的数量叠加但不超过物理机的总和.不超 ...
- [html5]使用localStorage兼容低版本Safari无法使用indexeddb的情况
摘要 简单场景描述:将html5开发的app内嵌入ios app中,有部分数据,需要在本地存储,就想到使用浏览器的localstorage或者indexeddb,另外localstorage存储的方式 ...
- 找回 : MobileCoreServices.framework
MobileCoreServices.framework 丢失后,可通过如下方式找回: 1.在同事机器上拷贝一个. 路径: 2.重装一个xcode 实践:将xcode4.5下的文件拷到xcode4 ...
- DockManager如何停靠 z
DockManager默认只能停靠在窗体上,如果想停靠在其他控件上,我们发现并没有选项可以选,可能目前大部分解决方法是新建一个用户控件文件,再在用户控件里面单独设计模块. 除了这种方法还有没有其他的呢 ...
- 解决 Ubuntu Software (Software Center) Crash 问题
问题描述: no application data found 解决方式: sudo apt purge gnome-software ubuntu-software sudo apt autorem ...
- ING【转载】epoll总结系列
epoll的总结之一基本的参数设置 http://fpcfjf.blog.163.com/blog/static/55469793201452095738566/?suggestedreading&a ...
- 求两个数中的较大值max(a,b)。(不用if,>)
题目:求两个数的较大值,不能使用if.>. 1.不使用if.>,还要比较大小,貌似就只能使用条件表达式: x=<表达式1>?<表达式2>:<表达式3>; ...