系统目录结构
Linux 的目录结构是一个有层次的倒挂着的树型目录结构, 根“/”是所有目录的顶点。
[root[@localhost](https://my.oschina.net/u/570656) ~]# ls /
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
- /bin 存放最常用命令
- /sbin 存放系统管理员使用的系统管理程序
- /boot存放是启动linux使用的一些核心文件,包括连接文件及镜像文件
- /dev Device缩写, 存放linux的外部设备
- /etc 存放所有系统管理员所需要的配置文件和子目录
- /home 用户家目录
- /lib和 /lib64存放系统最基本的动态连接共享库
- /media 系统自动识别一些设备(u盘),识别后,linux会把识别的设备挂在到该目录下
- /mnt 让用户临时挂载别的文件系统,如把光驱挂载到/mnt/上,然后进入该目录查看光驱内容
- /opt 给主机额外安装软件所设置的目录,默认为空.
- /proc 是一个虚拟目录, 是系统内存的映射, 可以直接访问它来获取系统信息. 该系统的内容在内存里, 可以直接修改里面的某些文件. 例如屏蔽ping命令
- /root 系统管理员的用户家目录
- /run 存放一些服务的pid, 和/var/run是同一个目录
- /srv 存放一些服务启动后需要提取的数据
- /sys 存放是与硬件驱动程序相关的信息
- / tmp 存放一些临时文件
- /usr 重要目录,类似windows下program file目录,用户很多应用程序和文件存放在该目录下
- /usr/bin 存放系统用户使用的应用程序
- /usr/sbin 存放超级用户使用的比较高级的管理程序和系统守护程序
- /usr/src 系统内核源代码默认的放置目录
- /var 该目录存放不断扩充且经常修改的目录,包括各种日志文件或者pid文件
常见文件类型
file命令和stat命令
file命令可以查看指定文件的文件类型,直接file+文件名即可
[root[@localhost](https://my.oschina.net/u/570656) ~]# file anaconda-ks.cfg
anaconda-ks.cfg: ASCII text
stat命令可以查看文件或目录的详细属性。
[root[@localhost](https://my.oschina.net/u/570656) ~]# stat anaconda-ks.cfg
文件:"anaconda-ks.cfg"
大小:1259 块:8 IO 块:4096 普通文件
设备:803h/2051d Inode:16797762硬链接:1
权限:(0600/-rw-------) Uid:(0/root) Gid:(0/root)
最近访问:2018-08-25 20:47:36.938284157 +0800
最近更改:2018-05-19 17:18:50.190993182 +0800
最近改动:2018-05-19 17:18:50.190993182 +0800
创建时间:-
下面为Linux中所有文件类型:
普通文件
第一个属性是"-"
Linux系统中,普通文件又有三种
1.纯文本文件,二进制文件和数据格式的文件。
纯文本文件,其内容可以用cat命令查看,使用vi来编辑它,比如配置文件几乎都是这种文件
2.二进制文件,Linux中的可执行文件,比如命令ls、cat、vi等等,不能直接使用cat等命令查看文件的内容类似于Windows的.exe文件;
3.数据格式文件,比较少见,是一种具有特定格式的文件。比如用户登录的信息的存放文件:/var/log/wtmp
如果直接cat查看这个文件就会出现乱码
使用特定的命令就可以查看它的内容: #last /var/log/wtmp
目录
目录文件与windows中文件夹类似,目录的第一个属性是为“d”
符号链接文件
符号链接文件就是跟Windows快捷方式类似的文件,它会指向另外一个文件。
符号链接文件在详细信息中第一个字符为 l
设备
与系统周边相关的一些文件,通常集中在/dev目录
1.块设备
就是存储数据, 提供系统及程序访问的接口设备,如硬盘、光驱等。
块设备文件第一个属性为“b”。
2.字符设备:
字符设备就是串行端口的接口设备,如键盘,鼠标等串口设备。、
字符设备文件第一个属性为“c”。
管道文件
管道文件(FIFO,pipe)也是一种特殊的文件类型,他主要的目的在解决多个程序同时存取一个文件所造成的错误问题。 FIFO是first-in-first-out的缩写。第一个属性为 p
套接字文件
套接字文件(.sock)是一类特殊的文件,这类文件通常用在网络之间进行数据连接,如我们可以启动一个程序来监听客户端的请求,客户端可以通过套接字来进行数据通信。第一个属性为 s
ls命令
-l 列出详细信息
-h自动变换文件大小单位
[root[@localhost](https://my.oschina.net/u/570656) ~]# ls -lh
总用量 4.0K
-rw-------. 1 root root 1.3K 5月 19 17:18 anaconda-ks.cfg
-i查看iNode号
[root[@localhost](https://my.oschina.net/u/570656) ~]# ls -i
16797762 anaconda-ks.cfg
-a 列出所有文件,包括隐藏文件
[root@localhost ~]# ls -la
总用量 28
dr-xr-x---. 4 root root 159 8月 24 05:24 .
dr-xr-xr-x. 17 root root 244 5月 19 22:01 ..
-rw-------. 1 root root 1259 5月 19 17:18 anaconda-ks.cfg
-rw-------. 1 root root 954 8月 24 06:35 .bash_history
-rw-r--r--. 1 root root 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 12月 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 12月 29 2013 .bashrc
-rw-r--r--. 1 root root 100 12月 29 2013 .cshrc
drwxr----- 3 root root 19 8月 24 05:24 .pki
drwx------. 2 root root 48 8月 15 15:56 .ssh
-rw-r--r--. 1 root root 129 12月 29 2013 .tcshrc
"."当前目录, ".."当前目录的上一级目录
-t 按文件的最后更改时间排序
[root@localhost ~]# ls -lat
总用量 28
-rw-------. 1 root root 954 8月 24 06:35 .bash_history
dr-xr-x---. 4 root root 159 8月 24 05:24 .
drwxr----- 3 root root 19 8月 24 05:24 .pki
drwx------. 2 root root 48 8月 15 15:56 .ssh
dr-xr-xr-x. 17 root root 244 5月 19 22:01 ..
-rw-------. 1 root root 1259 5月 19 17:18 anaconda-ks.cfg
-rw-r--r--. 1 root root 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 12月 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 12月 29 2013 .bashrc
-rw-r--r--. 1 root root 100 12月 29 2013 .cshrc
-rw-r--r--. 1 root root 129 12月 29 2013 .tcshrc
-d 针对目录的,只列出目录本身
[root@localhost ~]# ls -l /root/
总用量 4
-rw-------. 1 root root 1259 5月 19 17:18 anaconda-ks.cfg
[root@localhost ~]# ls -ld /root/
dr-xr-x---. 4 root root 159 8月 24 05:24 /root/
alias命令
给命令起别名,我们可以使用该命令可以将一些较长的命令进行简化。
临时生效
定义别名的格式: alias 别名=’真实命令’,真实命令一定要使用双引号或单引号括起来。这样设置的别名只是临时生效的,重新登录终端或重启系统就会失效。
[root@localhost ~]# alias liuzhen='ls'
[root@localhost ~]# ls
anaconda-ks.cfg
[root@localhost ~]# liuzhen
anaconda-ks.cfg
[root@localhost ~]# unalias liuzhen
[root@localhost ~]# liuzhen
-bash: liuzhen: 未找到命令
[root@localhost ~]#
永久生效
需要将定义别名写入到一个配置文件中,/etc/profile,这个配置文件是会开机自动加载的一个配置文件。
写入配置文件的方法有两个:
1:编辑/etc/profile文件,在文件末尾加上定义别名的命令。
2:一条命令:这条命令的意思是将双引号中的内容追加到/etc/profile文件的末尾。
echo "alias 别名='真实命令' " >> /etc/profile
取消别名方法
使用ualias命令即可. 格式: # ualias 别名
如果是通过写入过/etc/profile配置文件中使别名永久生效. 用ualias取消别名只是临时取消.如果要永久取消需要进入/etc/profile配置文件删除别名即可
另外一种临时取消别名方法: 命令前面加上一个 \
绝对路径和相对路径
绝对路径:路径的写法一定由根目录"/"写起。例如 /usr/local/mysql 这就是绝对路径。
相对路径:路径的写法不是由根目录"/"写起。例如,首先用户进入到/, 然后再进入到home
例如:
cd /home/
cd test
此时用户所在的路径为 /home/test 第一个cd命令后跟 "/home" 第二个cd命令后跟 test‘, 并没有斜杠,这个 "test" 是相对于 "/home" 目录来讲的,所以叫做相对路径。
cd命令
cd(change directory)这个命令是用来变更用户所在目录的,后面如果什么都不跟,就会直接到当前用户的根目录下,例如运行 cd 后,会进入root账户的根目录 /root。
cd 后面只能是目录名,而不能是文件名,如果跟了文件名会报错
pwd 这个命令打印出当前所在目录
. 表示当前目录,
.. 表示当前目录的上一级目录
~ 表示用户的家目录
**- ** 表示上一次所在的目录,
例如# cd - //进入上一次所在目录, 相当于电视遥控器返回键
创建和删除目录mkdir/rmdir
mkdir
mkdir其实就是make directory的缩写. 用来创建目录.
语法为 mkdir [-mp] [目录名称] ,其中-m、-p为其选项
-m : 用来指定要创建目录的权限
-p : 可以创建级联目录; 若创建一个已存在目录不会报错.默认什么都不做.
rmdir
删除空目录,后面可以是一个也可以是多个,多个的话用空格分隔. 只能删除目录,不能删除文件.不常用.
选项 -p: 同样可以级联删除一大串目录,但是级联的目录中其中一个目录里还有目录或者文件时就不行了。
rm命令
rm(remove),这个命令是最常用的,rm同样也有很多选项,常用是-r 和-f.
-r: 删除目录用的选项,等同于rmdir. 但是和rmdir不同的是,使用 rm -r删除目录时,会问一下是否删除,如果输入y则会删除,输入n则不删除。当然rm -r也不会向rmdir不能删除非空目录,它是可以删除非空目录的。
[root@localhost ~]# rm -r /tmp/liuzhen
rm:是否进入目录"/tmp/liuzhen"? y
rm:是否进入目录"/tmp/liuzhen/a"? y
rm:是否删除目录 "/tmp/liuzhen/a/b"?y
rm:是否删除目录 "/tmp/liuzhen/a"?y
rm:是否删除目录 "/tmp/liuzhen"?y
[root@localhost ~]# ls /tmp
-f: 表示强制删除,不再提示是否要删除,而是直接就删除了,而后面跟一个不存在的文件或者目录时,也不会报错。如果不加-f选项会报错。但如果删除一个存在的目录时,即使加上-f选项也会报错,所以使用rm删除目录时,一定要加-r选项.
[root@localhost ~]# rm -f /tmp/liuzhen
rm: 无法删除"/tmp/liuzhen": 是一个目录
[root@localhost ~]# rm -rf /tmp/liuzhen
[root@localhost ~]# ls /tmp
创建和删除文件
Linux创建文件有很多种方式:touch,vi等等都可以创建文件
-
touch 需要创建文件名
如果touch的文件已经存在了则会改变该文件的时间标签为当前系统时间。
touch还可以单独修改文件或目录的访问时间和修改时间。
修改时间的方式有两个选项:
-t(时间格式:201805121200 表示2018年5月12日12:00)
-d(时间格式:“20180512 12:00”需用双引号括起来)和-t选项只是时间格式不同。
还有两个选项 -a 修改访问时间(access) -m修改文件内容的修改时间(modify)
2.使用vi编辑一个不存在的文件时,当执行保存退出的操作后也会创建对应的文件。
- 删除文件使用rm命令,其操作跟删除目录方法类似。删除文件时不用加-r选项
九、环境变量PATH
PATH简单说就是一个字符串变量,当输入命令的时候linux会去查找PATH里面记录的路径。
PATH中每个路径使用 : 分隔
# echo $PATH #这里echo是一个输出命令,$符的作用是获取一个变量的值
- 配置个人用户环境变量
/etc/profile文件是对全局生效的配置文件,修改后对每一个用户都会生效,这样就不是很安全。
用户的家目录下有一个文件 .bashrc。这个文件每个用户的家目录下都有。 这是用户私有的配置文件。修改这个文件只对单独一个用户生效。所以我们在这个文件里更改环境变量更安全。
将配置命令写入.bashrc配置文件中
# echo 'PATH=$PATH:/test/' >> /root/.bashrc
重新加载.bashrc配置文件
# source .bashrc #source命令可以将一个文件当做一个命令来执行,重新执行.bashrc,就相当于重载了.bashrc的配置。
文档查看cat /more/less/head/tail
这里的文件查看只能查看普通的文本文件,二进制文件,和数据文件是不支持直接查看的。
cat:
cat会一次将整个文件的内容都显示出来,只适合用来查看小文件,用来查看大文件就不是很方便了
cat有一个常用选项 -n 用于显示文件内容的行号
与cat对应的还有一个tac命令,它的作用是以行为单位倒序列出文件内容,即从最后一行开始倒序列出。
more命令:
more命令查看的文件内容如果不足一屏,其效果跟cat类似。
查看大文件时可以进行上下翻页等操作
空格键:向后翻一屏内容 B键:向前翻一屏内容 回车键:向后翻一行内容 F键:直接跳到文件末尾。 more查看文件到末尾会自动退出 所以F键和Q键的功能相似 Q键:直接退出more命令。
less命令:
less命令跟more命令相似,less浏览到文件末尾不会自动退出,而且支持关键字搜索功能。
less有一个常用的选项,-N 可以显示行号
退出:Q键 到文件头:G键 到文件尾:Shift+G 向下翻页:空格键,F键,PageDown键 向上翻页:B键,PageUp键,U键,W键 向下一行:回车键,下方向键,K键 向上一行:上方向键,J键,E键 显示帮助页面:H键 q键退出帮助页面 /关键字:向后搜索文件内容中的关键字。 ?关键字:向前搜索文件内容中的关键字。 N键:搜索模式下跳到下一个搜索到的关键字 Shift+N:搜索模式下跳到上一个搜索到的关键字
head命令:
head命令查看指定文件头部的内容,默认为十行。
2.17 隐藏权限lsattr_chattr
命令 chattr
语法: chattr [+-=][Asaci] [文件或者目录名]
-
- =: 分别为增加、减少、设定
A: 增加该属性后,文件或目录的 atime 将不可被修改;
S: 增加该属性后,会将数据同步写入磁盘中;
a: 增加该属性后,只能追加不能更改,非 root 用户不能设定该属性;
c: 自动压缩该文件,读取时会自动解压;
i: 增加后,使文件或目录不能被删除、重命名、设定链接、写入、新增数据;即使是root用户也不能修改;
其中常用的为 a 和 i 两个选项。
[root@localhost ~]# chattr +i test2
[root@localhost ~]# touch test2/test1
touch: 无法创建'test2/test1': 权限不够
[root@localhost ~]# chattr -i test2
[root@localhost ~]# touch test2/test1
[root@localhost ~]# chattr +i test2
[root@localhost ~]# rm -f test2/test1
rm: 无法删除'test2/test1': 权限不够
对 test2 目录增加 i 权限后,即使是 root 账户也不能在 test2 目录中创建或删除 test1 文件
[root@localhost ~]# touch test2/test3
[root@localhost ~]# ls test2
test1 test3
[root@localhost ~]# chattr +a test2
[root@localhost ~]# rm -f test2/test1
rm: 无法删除 'test2/test1': 不允许的操作
[root@localhost ~]# touch test2/test4
[root@localhost ~]# ls test2
test1 test3 test4
test2 目录增加 a 权限后,只可以在里面创建文件,而不能删除文件。文件同样可以适用这些权限。
命令 : lsattr
该命令用来读取文件或者目录的特殊权限,语法为 lsattr [-aR] [文件/目录名]
-a: 类似与 ls 的-a 选项,即连同隐藏文件一同列出;
-R: 连同子目录的数据一同列出
lsattr test2
-----a-------e- test2/test1
----i--------e- test2/test3
-------------e- test2/test4
lsattr -aR test2
----i--------e- test2/.
-----a-------e- test2/test1
-------------e- test2/..
----i--------e- test2/test3
-------------e- test2/test4
2.18 特殊权限set_uid
该权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限。保证普通用户临时拥有root用户权限。例如passwd命令
[root@localhost ~]# ls -l /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd
passwd 显示的是 rws,并非传统的 rwx。用数字表示为 4755。那么这个 4 是如何计算来的呢?当有特殊权限时,第一位数字可以是 0, 1(--t), 2(-s-), 3(-st), 4(s--), 5(s-t), 6(ss-), 7(sst)。
2.19 特殊权限set_gid
该权限可以应用在文件上同样也可以作用在目录。设置在文件上,作用和 set uid 类似,前提是这个文件是可执行的二进制文件,当设置 set gid 后,执行该文件的用户会临时以该文件所属组的身份执行。若目录被设置这个权限后, 任何用户在此目录下创建的文件或目录都具有和该目录所属的组相同的组。
[root@localhost ~]# mkdir /tmp/test
[root@localhost ~]# chmod 777 /tmp/test
[root@localhost ~]# ls -ld /tmp/test
drwxrwxrwx 2 root root 4096 8 月 14 17:58 /tmp/test
[root@localhost ~]# chmod g+s /tmp/test
[root@localhost ~]# ls -ld /tmp/test
drwxrwsrwx 2 root root 4096 8 月 14 17:58 /tmp/test
[root@localhost ~]# su - user1
[user1@localhost ~]$ cd /tmp/test
[user1@localhost test]$ mkdir 123
[user1@localhost test]$ touch 1.txt
[user1@localhost test]$ ls –l
总用量 4
drwxrwsr-x 2 user1 root 4096 8 月 14 17:59 123
-rw-rw-r-- 1 user1 root 0 8 月 14 17:59 1.txt
说明:给/tmp/test 目录设置 set gid 权限后,权限由原来的 drwxrwxrwx 变为 drwxrwsrwx,此时以 user1身份在/tmp/test 目录里创建目录和文件,其所属组都为 root,而不是 user1。
2.20 特殊权限stick_bit
Stick_bit 可以理解为防删除位。一个文件是否可以被某用户删除,主要取决于该文件所在目录是否对该用户具有写权限。如果没有写权限,则这个目录下的所有文件都不能被删除,同时也不能添加新的文件。如果希望用户能够添加文件但同时不能删除该目录下的其他用户的文件,则可以对父目录增加该权限。设置它后,就算用户对目录具有写权限,也不能删除其他用户的文件。比如/tmp/目录就设置过该权限
[root@localhost ~]# ls -ld /tmp/
drwxrwxrwt. 7 root root 16384 8 月 14 17:58 /tmp/
我们再来增加一个用户,来测试该权限的作用。
[root@localhost ~]# useradd user2
[root@localhost ~]# su - user1
[user1@localhost ~]$ touch /tmp/user1.txt
[user1@localhost ~]$ echo "121" > !$
echo "121" > /tmp/user1.txt
[user1@localhost ~]$ exit
logout
[root@localhost ~]# su - user2
[user2@localhost ~]$ rm -f /tmp/user1.txt
rm: 无法删除"/tmp/user1.txt": 不允许的操作
说明:一个文件能否被删除,取决于该文件父目录的权限, /tmp/目录是 777,任何人都可写的,所以理论上任何人都可以删除/tmp/下的所有文件,但是刚才我们做的实验却表明, user2 是不可以删除 user1 的文件的,这就是因为/tmp/目录有一个 stick bit。
2.21 软连接和硬链接文件
链接文件分为两种,硬链接(hard link)和软链接(symbolic link)。两种链接的本质区别关键点在于 inode。
硬链接: 当系统要读取一个文件时,就会先去读 inode table,一个文件对应一个 inode,然后再去根据 inode 中的信息到块区域去将数据取出来。而硬链接是直接使用了和源文件相同的 inode,硬链接文件直接链接到文件放置的块区域。也就是说,进行硬链接的时候实际上该文件内容没有任何变化,只是指定了相同的 inode。硬链接有两个限制: (1)不能跨文件系统,因为不同的文件系统有不同的 inode table; (2) 不能链接目录。
软链接: 跟硬链接不同,这个是建立一个独立的文件,而这个文件的作用是当读取这个链接文件时,它会把读取的行为转发到该文件所 link 的文件上。
建立软连接和硬链接用 ln命令:语法 : ln [-s] [来源文件] [目的文件]
ln 常用的选项就一个-s,如果不加就是建立硬链接,加上就建立软链接。
2.22 find搜索命令
- 使用find搜索文件
语法 : find [路径] [参数]
几个经常用的参数
-atime +n/-n: 访问或执行时间大于/小于n天的文件
-ctime +n/-n: 写入、更改inode属性(例如更改所有者、权限或者链接)时间大于/小于n天的文件
-mtime +n/-n: 写入时间大于/小于n天的文件
-name filename: 直接查找该文件名的文件
[root@localhost ~]# find . -name test2
./test/test2
./test2
-type filetype: 通过文件类型查找。filetype 包含了 f、b,、c、d、l、s 等。
[root@localhost ~]# find /tmp/ -type d
/tmp/
/tmp/ .ICE-unix
[root@localhost ~]# find /tmp/ -type f
/tmp/yum.log
- mtime,atime,ctime三个time属性
atime:文件的Access time,是在读取文件或者执行文件时更改的。
mtime:文件的Modified time,是在写入文件时随文件内容的更改而更改的。
ctime:文件的Create time,是在写入文件、更改所有者、权限或链接设置时随inode的内容更改而更改的。
备注:inode:它译成中文就是索引节点,它用来存放档案及目录的基本信息,包含时间信息、文档名、属主以及属组等。Inode是Unix操作系统中的一种数据结构,本质是结构体,inode是随文件系统创建时生成的,它的个数有限。在Linux下,可以通过df -i来查看各个分区的inode数量。
获取mtime,atime,ctime命令stat
[root@localhost ~]# stat test/test2
File: 'test/test2'
Size: 0 Blocks: 0 IO Block: 4096 普通空文件
Device: 803h/2051d Inode: 261657 Links: 1
Access: (0744/-rwxr--r--) Uid: ( 500/ user1) Gid: ( 500/testgroup)
Access: 2014-05-10 09:00:36.092000531 +0800
Modify: 2014-05-10 09:00:36.092000531 +0800
Change: 2014-05-10 09:30:58.788996594 +0800
备注:atime不一定在访问文件之后被修改,因为使用ext3文件系统的时候,如果在mount的时候使用了noatime参数那么就不会更新atime的信息。总之, 这三个time属性值都放在了inode中。若mtime、atime修改inode就一定会改,既然inode改了,那ctime也就跟着要改了。
- which 查找可执行文件的绝对路径,which 只能用来查找 PATH 环境变量中出现的路径下的可执行文件。whereis很少用
[root@localhost ~]# which vi
/bin/vi
[root@localhost ~]# which cat
/bin/cat
- whereis 查找文件
它是通过预先生成的一个文件列表库去查找跟给出的文件名相关的文件。语法: whereis [-bmsu] [文件名称]
-b: 只找 binary 文件
-m: 只找在说明文件 manual 路径下的文件
-s: 只找 source 来源文件
-u: 没有说明档的文件
whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz
- locate查找文件 它类似于whereis,也是通过查找预先生成的文件列表库来告诉用户要查找的文件在哪里。后边直接跟文件名。
[root@localhost ~]# yum install -y mlocate
[root@localhost ~]# locate passwd
locate: can not open `/var/lib/mlocate/mlocate.db': No such file or directory
安装好mlocate包后,运行locate命令会报错,这是因为系统还没有生成那个文件列表库。你可以使用updatedb命令立即生成(更新)这个库。如果你的服务器上正跑着重要的业务,那么最好不要去运行这个命令,因为一旦运行,服务器的压力会变大。这个数据库默认情况下每周更新一次。当使用locate命令去搜索一个文件,而该文件正好是在两次更新时间段内创建的,肯定是得不到结果。
利用locate搜索到的文件列表,不管是目录名还是文件名,只要包含我们要搜索的关键词,都会列出来,所以locate不适合精准搜索,这个命令使用的也不多。
2.26 文件后缀名
linux命令区分大小写
在windows下可以根据文件的后缀能判断文件的类型。但在在linux下,linux文件名的后缀可自主命名,一个文件是否能够被执行,和后缀名没有太大的关系,主要和文件的属性有关。
linux系统下常见的文件名后缀及文件类型
1:系统文件*.conf配置文件
.rpm rpm包
.a 一种存档文件
.lock 一种琐文件
.~ 备份文件
. 隐藏文件
2:程序或脚本.c c语言源程序文件
.cpp c++语言源程序
.h c或c++头文件
.o 程序对象文件
.pl perl语言源程序
. php php语言源程序
.tcl tcl脚本程序
.so/.lib 库文件
.sql sql语言文件
3:格式文件
.txt 无格式的ascii码文件
.html/.htm 静态web页
.ps postScipt文件
.au 一种声音文件
.wav 一种声音文件
.xpm一种图像文件
.png一种图形,图像文件
4:存档与压缩文件
.tar tar归档文件
.Z/.gz/.bz2压缩文件
.tar.gz/.tgz/.tar.bz2/.tbz为压缩后的tar包
2.27 linux和windows互传文件
使用 xshell 或者securecrt
yum install -y lrzsz
sz file : 把linux上的文件传到windows上
rz : 把windows上的文件传到linux下的当前目录。