一、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

最新文章

  1. [NHibernate]事务
  2. html代码中显示系统时间
  3. rsa加密解密
  4. 如何给你的ASP.NET页面添加HelpPage
  5. 【crunch bang】 tint2-用来控制桌面的布局
  6. Xml通用操作类
  7. springboot 详细配置2
  8. PHP MySQL 创建数据库和表 之 Create
  9. Multiplepack coming~^.^
  10. selenium firefox
  11. Java之枚举
  12. [验证码识别技术]字符验证码杀手--CNN
  13. EBS应收(AR)模块常用表
  14. Windows 主机名映射地址
  15. MySQL面试题中:主从同步的原理
  16. iOS强制横屏或强制竖屏
  17. java-信息安全(十一)-非对称加密算法ECC
  18. HDU 3746 - Cyclic Nacklace & HDU 1358 - Period - [KMP求最小循环节]
  19. Python Web学习笔记之SOCK_STREAM和SOCK_DGRAM
  20. 一个故意消耗内存的java程序MemoryEater

热门文章

  1. jmeter用BeanShell调用jar包对HTTP请求中的参数进行MD5加密
  2. IIS Express并发数设置
  3. warning,C4996,sprintf,deprecated,C4996,strcpy,C4996,strcat
  4. POJ 3740 Dancing Links
  5. Unity3.x游戏开发经典教程 书例 100%完毕~
  6. spring mvc获取header
  7. Android4.2.2NDK和源代码开发jni的异同
  8. 附1 rabbitmq常用命令
  9. Android studio 中NameValuePair跟BasicNameValuePair 不能正常导包问题
  10. Anagrams leetcode java