一,linux目录结构
windows:以多根的方式组织文件 C:\  D:\  E:\
Linux:以单根的方式组织文件 /   (一切目录的起点都是 / )

成都创新互联公司从2013年创立,先为子洲等服务建站,子洲等地企业,进行企业商务咨询服务。为子洲企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
/目录结构: FHS
[root@localhost /]# ls
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
root root用户的HOME
home 存储用户家目录
dev 设备文件目录 /dev/sda, /dev/tty, /dev/pts/1, /dev/zero, /dev/null, /dev/random
proc 虚拟文件系统,反映出来的是内核,进程信息或实时状态,只存在于内存中,大小为0
sys 伪文件系统(硬件信息,内核参数,进程在内存中的信息)类似于proc目录
bin 普通用户的命令存储的目录
sbin 管理员用户的命令存储的目录
lib 库文件,存放32位的应用程序所需要的共享库,类似于windows里的.dll
lib64 库文件 ,存放64位的应用程序所需要的共享库
usr       系统文件(应用程序目录),相当于C:\Windows
例如:   /usr/local    软件安装的目录,相当于C:\Program
/usr/bin       普通用户使用的应用程序
/usr/sbin       管理员使用的应用程序
/usr/lib      32 bit库文件Glibc      注:Glibc是系统底层的api ,而api(英文全称是application Programing Interface)应用程序接口
/usr/lib64    64bit库文件Glibc
boot   存放的系统启动相关的文件,例如kernel,grub(引导装载程序)
etc       配置文件(系统相关的文件)
例如:/etc/sysconfig/network  网络相关的配置文件
tmp 临时文件(主要是程序产生的临时数据)
var      存放的是一些变化的文件,比如数据库,日志,邮件.....
例如:/var/lib/MySQL      mysql数据库文件
/var/vsftp             ftp共享文件
/var/spool/mail      邮件的文件
/var/spool/cron      设置定时任务所存放的文件
/var/log                  运行所有程序存放的的日志文件
/var/tmp                 (程序产生的临时文件)
srv 服务器数据目录
opt 第三方软件 (flush,splunk,openoffice)
==设备(主要指存储设备)挂载目录==
/run/media    移动默认的挂载的目录
/mnt  手动挂载设备的挂载目录
df -Thp 查看系统中的挂载项
例如:
[root@localhost ~]# df -ThP
文件系统                类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root xfs        18G  4.3G   14G   25% /
devtmpfs                devtmpfs  470M     0  470M    0% /dev
tmpfs                   tmpfs     487M     0  487M    0% /dev/shm
tmpfs                   tmpfs     487M  7.7M  479M    2% /run
tmpfs                   tmpfs     487M     0  487M    0% /sys/fs/cgroup
/dev/sda1               xfs       497M  173M  324M   35% /boot
tmpfs                   tmpfs      98M   36K   98M    1% /run/user/0
/dev/sr0                iso9660   603M  603M     0  100% /run/media/root/CentOS 7 x86_64
二,命令存储位置
/bin        普通用户使用的命令 /bin/ls, /bin/date 
/sbin 管理员使用的命令
/usr/bin  普通用户使用的应用程序
/usr/sbin  管理员用户使用的应用程序
库文件存储位置:
/lib    32位库文件Glibc
/lib64  64位库文件Glibc
/usr/lib  32bit应用程序库文件 Glibc
/usr/lib64  64位应用程序库文件 Glibc
小知识:
Linux文件有三种时间:
访问时间:atime,查看内容
修改时间:mtime,修改内容
改变时间:ctime,文件属性,比如权限
例如:
[root@localhost ~]# touch gg.log             
[root@localhost ~]# ll gg.log                              仅查看文件修改时间
-rw-r--r--. 1 root root 0 8月  28 06:17 gg.log     
[root@localhost ~]# stat  gg.log                         查看文件的详细属性(其中包括文件时间属性)
文件:"gg.log"
大小:0          块:0          IO 块:4096   普通空文件
设备:fd00h/64768d Inode:73215767    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2019-08-28 06:17:16.030170315 +0500
最近更改:2019-08-28 06:17:16.030170315 +0500
最近改动:2019-08-28 06:17:16.030170315 +0500
创建时间:-
文件类型:
通过颜色判断文件类型不一定正确!!
Linux文件没有扩展名
如何查看文件类型?
方法一:
[root@localhost ~]# ll anaconda-ks.cfg        //看第一个字符
-rw-------. 1 root root 955 8月  19 23:36 anaconda-ks.cfg
- 普通文件(文本文件,二进制文件,压缩文件)
 如:
 -rw-------. 1 root root 955 8月 19 23:36 anaconda-ks.cfg
d  目录文件 (一般目录显示为蓝色)
如:
drwxr-xr-x. 2 root root   6 8月  26 06:56 桌面
b  设备文件(块设备)存储设备硬盘,u盘  例如:/dev/sda,/dev/sda1
如:
brw-rw----. 1 root disk      8,   1 8月  28 05:19 sda1
c 字符设备文件(字符设备)打印机,终端 /dev/tty1
如:
crw--w----. 1 root tty       4,   1 8月  28 05:19 tty1
s  套接字文件
如:/dev/log
srw-rw-rw-. 1 root root           0 8月  28 05:19 log
p 管道文件
l 链接文件(淡蓝色)
方法二:file
[root@localhost ~]# file anaconda-ks.cfg
anaconda-ks.cfg: ASCII text         文本文件,二进制文件,压缩文件     
[root@localhost ~]# file /bin/cd
/bin/cd: POSIX shell script, ASCII text executable    可执行的文件
[root@localhost ~]# file /home
/home: directory                                                    目录
[root@localhost ~]# file /dev/sda
/dev/sda: block special                                        块设备
[root@localhost ~]# file /dev/tty1
/dev/tty1: character special                                字符设备
[root@localhost ~]# file /etc/grub2.cfg
/etc/grub2.cfg: symbolic link to `../boot/grub2/grub.cfg'       符号链接
[root@localhost ~]# file /var/spool/postfix/public/pickup
/var/spool/postfix/public/pickup: socket                                套接字
路径(定位文件)
绝对路径: 从 /开头的路径   如: /home/file1  ,  ~/alice
相对路径:  相对于当前目录开始 Desktop/file file1 .  ..
.     当前目录
..    上一级目录
~    当前目录的家目录
useradd alice
touch /home/alice/file1
touch ~alice/file2
ls /home/alice
mkdir /home/abc
touch ../file3
touch file4 ./file5
touch /home/abc/file5
ls
ls /home/abc
三,文件管理
- cd 改变目录
cd     绝对路径    cd  /home/alice  cd   ~alice
cd     相对路径   cd  Desktop/abc  cd ..  cd .  cd -
cd  -  返回上次目录
cd      直接回家
- 创建/复制/移动/删除/查看
1)创建
目录 mkdir
#mkdir [option]<目录名称>
[root@localhost ~]# mkdir /tmp/bj
[root@localhost ~]# mkdir sh
[root@localhost ~]# mkdir /linux
选项
-p             层级创建目录
[root@localhost ~]# mkdir -p /uplooking/linux
1)文件管理
1查看文件
#ls  [option] [目录名称]
-l 以详细信息的方式显示文件信息
[root@localhost ~]# ls -l
总用量 4
-rw-------. 1 root root 955 8月  19 23:36 anaconda-ks.cfg
  -              文件
  d             目录
   l             软连接文件(link )
   b            块设备(block),硬盘,硬盘分区,u盘,光盘
   c            字符设备文件(character)    键盘鼠标,显示器[root@localhost ~]# ls -l /etc/passwd
-rw-r--r--. 1 root root 2444 8月  20 17:19 /etc/passwd
-h 以人性化的方式显示出来文件信息
[root@localhost ~]# ls -lh /etc/passwd
-rw-r--r--. 1 root root 2.4K 8月  20 17:19 /etc/passwd
-d 显示目录自身的信息
[root@localhost ~]# ls -ldh  /etc
drwxr-xr-x. 143 root root 8.0K 8月  30 06:53 /etc
-a 显示所有文件以及隐藏文件(以.开头的文件)
[root@localhost ~]# ls -a
.                .bash_history  .bashrc  .cshrc     .ICEauthority  .tcshrc  视频  下载
..               .bash_logout   .cache   .dbus      .local         公共     图片  音乐
anaconda-ks.cfg  .bash_profile  .config  .esd_auth  .pki           模板     文档  桌面
-t 按文件修改时间降序排列
[root@localhost ~]# ls -lt
总用量 4
-rw-r--r--. 1 root root   0 8月  30 07:21 1.txt
drwxr-xr-x. 2 root root   6 8月  30 06:55 公共
drwxr-xr-x. 2 root root   6 8月  30 06:55 视频
drwxr-xr-x. 2 root root   6 8月  30 06:55 图片
drwxr-xr-x. 2 root root   6 8月  30 06:55 文档
drwxr-xr-x. 2 root root   6 8月  30 06:55 音乐
drwxr-xr-x. 2 root root   6 8月  30 06:55 模板
drwxr-xr-x. 2 root root   6 8月  30 06:55 下载
drwxr-xr-x. 2 root root   6 8月  30 06:55 桌面
-rw-------. 1 root root 955 8月  19 23:36 anaconda-ks.cfg
-S 按文件大小降序排列
[root@localhost ~]# ls -lhS
总用量 4.0K
-rw-------. 1 root root 955 8月  19 23:36 anaconda-ks.cfg
drwxr-xr-x. 2 root root   6 8月  30 06:55 公共
drwxr-xr-x. 2 root root   6 8月  30 06:55 模板
drwxr-xr-x. 2 root root   6 8月  30 06:55 视频
drwxr-xr-x. 2 root root   6 8月  30 06:55 图片
drwxr-xr-x. 2 root root   6 8月  30 06:55 文档
drwxr-xr-x. 2 root root   6 8月  30 06:55 下载
drwxr-xr-x. 2 root root   6 8月  30 06:55 音乐
drwxr-xr-x. 2 root root   6 8月  30 06:55 桌面
-rw-r--r--. 1 root root   0 8月  30 07:21 1.txt
2)统计目录大小
[root@localhost ~]# du -sh /etc/passwd
4.0K    /etc/passwd
-a 显示目录中个别文件的大小
[root@localhost ~]# du -ah /etc/
3)创建文件
#touch <文件名称>
花括号展{}开:
[root@localhost ~]# touch /tmp/1.txt
[root@localhost ~]# touch /tmp/{1,3,9}.jpg 只创建 1,3,9的jpg格式的文件
[root@localhost ~]# touch /tmp/{1..10}.mp3 创建1到10的.mp3的文件
[root@localhost ~]# touch /tmp/{a,b,c}.txt
[root@localhost ~]# date
2019年 08月 30日 星期五 07:59:13 PKT
[root@localhost ~]# date +%F
2019-08-30
[root@localhost ~]# date +%T
08:02:33
[root@localhost ~]# date +%H      只显示小时
08
[root@localhost ~]# date +%M     只显示分钟
05
[root@localhost ~]# date +%m     只显示秒
08
[root@localhost ~]# date +%F-%T       具体年月日-具体时间
2019-08-30-08:08:31
命令引用:
方法1:$(command)
[root@localhost ~]# touch /tmp/$(date +%F-%T).log
[root@localhost ~]# ls /tmp
2019-08-30-08:13:42.log
方法2:反引号
[root@localhost ~]# touch /tmp/date +%F-%T.log
[root@localhost ~]# ls /tmp
2019-08-30-08:23:08.log
4)复制文件目录
#cp [option] 源文件 目标文件
选项:
-r 复制目录时
[root@localhost ~]# cp -r /linux/ /windows/
-f 强制覆盖
[root@localhost ~]# cp -fn /linux/1.txt /windows/
5)移动文件目录
#mv 源文件 目标文件
[root@localhost ~]# mv /linux/1.txt /linux/66.txt
6)删除文件目录
#rm [option] 文件名称
[root@localhost ~]# rm /linux/66.txt
rm:是否删除普通空文件 "/linux/66.txt"?
-r 删除目录时
[root@localhost ~]# rm -r /linux/66.txt
rm:是否删除普通空文件 "/linux/66.txt"?
-f     强制删除目录
[root@localhost ~]# rm -rf /linux/66.txt
7)统计文件的行数
[root@localhost ~]# wc -l /etc/passwd
46 /etc/passwd
[root@localhost ~]# wc  /etc/passwd
46   96 2444 /etc/passwd                  查看文件行数,字数,字节数
8)查看文件内容 ------cat/more/less/head/tail
- cat
[root@localhost ~]# cat /etc/fstab
#
/etc/fstab
Created by anaconda on Tue Aug 20 02:30:01 2019
#
Accessible filesystems, by reference, are maintained under '/dev/disk'
See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=72251e67-7f60-4598-99cd-67f415c4496d /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
[root@localhost ~]# cat -n /etc/fstab       显示所有航
1
2  #
3  # /etc/fstab
4  # Created by anaconda on Tue Aug 20 02:30:01 2019
5  #
6  # Accessible filesystems, by reference, are maintained under '/dev/disk'
7  # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
8  #
9  /dev/mapper/centos-root /                       xfs     defaults        0 0
10  UUID=72251e67-7f60-4598-99cd-67f415c4496d /boot                   xfs     defaults        0 0
11  /dev/mapper/centos-swap swap                    swap    defaults        0 0
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
- more/less分页内容
[root@localhost ~]# more /etc/fstab 用b翻页
[root@localhost ~]# less /etc/fstab 能用上下键翻页
head/tail
head -n 具体要显示几行 从头开始第几行
[root@localhost ~]# head -n 3 /etc/passwd         显示前3行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
[root@localhost ~]# head  /etc/passwd         默认显示前10行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
[root@localhost ~]# tail  -n 3  /etc/passwd             后3行
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
roo:x:1000:1000:root:/home/roo:/bin/bash
[root@localhost ~]# tail   /etc/passwd                                默认提示后10行
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
saned:x:988:982:SANE scanner daemon user:/usr/share/sane:/sbin/nologin
sssd:x:987:981:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:986:980::/run/gnome-initial-setup/:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
roo:x:1000:1000:root:/home/roo:/bin/bash
9)查看文件类型
[root@localhost ~]# file /etc/passwd
/etc/passwd: ASCII text
[root@localhost ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
[root@localhost ~]# file /usr/bin/ls
/usr/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aa7ff68f13de25936a098016243ce57c3c982e06, stripped
管道符的使用: |
[root@localhost ~]# ls -hlS /etc/ |head -n 5
总用量 1.5M
-rw-r--r--.  1 root root   655K 6月   7 2013 services
-rw-r--r--.  1 root root    79K 8月  20 23:52 ld.so.cache
-rw-r--r--.  1 root root    25K 8月   6 2015 dnsmasq.conf
-rw-r--r--.  1 root root    22K 4月  11 2018 brltty.conf
[root@localhost ~]# ls -lt /etc/ |head -n 11
总用量 1496
drwxr-xr-x.  5 root lp       4096 8月  30 12:46 cups
-rw-r--r--.  1 root root       73 8月  30 06:53 resolv.conf
drwxr-xr-x.  6 root root     4096 8月  30 06:53 sysconfig
drwx------.  5 root root     4096 8月  21 00:12 libvirt
-rw-r--r--.  1 root root    80791 8月  20 23:52 ld.so.cache
drwxr-xr-x.  2 root root     4096 8月  20 23:52 alternatives
drwxr-xr-x.  2 root root     4096 8月  20 23:52 bash_completion.d
drwxr-xr-x.  2 root root       54 8月  20 23:52 cron.daily
drwxr-xr-x.  2 root root       21 8月  20 23:52 cron.hourly
drwxr-xr-x.  6 root root       95 8月  20 23:52 yum
10)查找文件目录
find 路径 查找方式
按文件名查找
[root@localhost ~]# find /etc/ -name "*.conf"
[root@localhost ~]# find /etc/ -name "*.conf" |wc -l
452
按文件大小查找
[root@localhost ~]# find /etc/ -size +500k
[root@localhost ~]# find /etc/ -size +1M
按文件修改时间查找
[root@localhost ~]# find /etc   -mtime +5           修改时间超过5天的
[root@localhost ~]# find /etc -mtime 5 修改时间等于5天的
[root@localhost ~]# find /etc/ -mtime -5 修改时间为5天内的
文件类型查找
[root@localhost ~]# find /dev/ -type  b               查找块设备类型的
/dev/dm-1
/dev/dm-0
/dev/sr0
/dev/sda2
/dev/sda1
/dev/sda
[root@localhost ~]# find /dev/ -type l 查找链接类型的文件
扩展知识:
dos2unix 将windows格式的文件转换成unix
unix2dos 将unix格式的文件转换成windows
文章名称:linux基本文件目录的结构及管理
标题路径:http://www.scyingshan.cn/article/gddhsi.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 