Linux(4):文件属性
文件属性:
# 重点: 磁盘空间不足 和 软链接与硬链接的区别
查看文件的属性:
# ls lhi 文件 [root@NEO ~]# ls -lhi /etc/hosts 130078 -rw-r--r--. 2 root root 180 Mar 14 18:35 /etc/hosts# 上面输出信息 每列的含义: 130078 ===> inode 号码,文件的号码(相当于人的身份证号码) - ===> 第1个 - :表示文件的类型 rw-r--r-- ===> 文件的权限 . ===> 与 selinux 有关 2 ===> 文件的硬链接数量 root ===> 文件的所有者 root ===> 用户属于的家族 180 ===> 文件大小 Mar 14 18:35 ===> 文件的修改时间 /etc/hosts ===> 文件名 (注意:文件名不是文件的属性)
1. inode 和 block 简介
# 获得一个硬盘 到 可以向硬盘中存放数据的过程: # 硬盘(房子) --- 分区(划分隔断) --- 格式化创建文件系统(装修成不同风格) --- 挂载(安装门窗)
inode 和 block
# inode 1) 含义:index node(索引节点) 用来存放文件属性的空间;通过inode号码找到这个空间的 文件名不存放在 inode 中 (所以文件名不属于文件属性) 2) 怎么来的? 格式化创建文件系统时创建的 3) 特点:1. inode存放文件属性2. 存放了block的位置(指向block的指针)3. 创建一个文件就要占用一个inode4. inode 节点号相同的文件,互为硬链接文件,可以认为是一个文件的不同入口。5. inode 在某一个文件系统(分区)中,是唯一的4) 怎么用/看 inode ls -i (看某些文件的 inode 号码) 或者 df -i (系统里面inode用了多少、剩余多少) [root@NEO ~]# ls -i 405404 anaconda-ks.cfg 138447 data 390150 install.log.syslog [root@NEO ~]# ls -li total 16 405404 -rw-------. 1 root root 1061 Oct 16 00:49 anaconda-ks.cfg 138447 drwxr-xr-x. 2 root root 4096 Mar 8 15:55 data 390150 -rw-r--r--. 1 root root 5890 Oct 16 00:47 install.log.syslog [root@NEO ~]# ls -lih total 16K 405404 -rw-------. 1 root root 1.1K Oct 16 00:49 anaconda-ks.cfg 138447 drwxr-xr-x. 2 root root 4.0K Mar 8 15:55 data 390150 -rw-r--r--. 1 root root 5.8K Oct 16 00:47 install.log.syslog [root@NEO ~]# [root@NEO ~]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda3 593344 55426 537918 10% / tmpfs 60748 1 60747 1% /dev/shm /dev/sda1 51200 39 51161 1% /boot# block 1)含义: 数据块 block是实际存放数据的位置 2)怎么来的? 格式化创建文件系统时创建的 3)特点:1. block是实际存放数据的位置2. block的大小:4k (centos 6.x默认的大小) 1k 8k 3. 创建大文件会占用多个 block,如果文件很小(如 1k),4k 剩余的空间会被浪费 4. 创建一个非空文件要占用一个 inode 和至少1个 block5. 每读取一个 block 就会消耗一次磁盘I/O(input/output 磁盘读写)4) 怎么看/用 block ?df -h (磁盘block使用情况)ls -lh (查看一个文件的大小)[root@NEO ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 1.5G 6.9G 18% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot
No space left on device (磁盘空间不足--因为block满了)
# 1. 看看到底哪里满了 [root@NEO ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 1.5G 6.9G 18% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot [root@NEO ~]# du -sh /* 8.0K /app 7.6M /bin 38M /boot 8.0K /data 220K /dev 30M /etc 24K /home 214M /lib 27M /lib64 16K /lost+found 4.0K /media 4.0K /mnt 24K /neozheng 36K /oldboy 28K /opt du: cannot access `/proc/1893/task/1893/fd/4': No such file or directory du: cannot access `/proc/1893/task/1893/fdinfo/4': No such file or directory du: cannot access `/proc/1893/fd/4': No such file or directory du: cannot access `/proc/1893/fdinfo/4': No such file or directory 0 /proc 64K /root 16M /sbin 4.0K /selinux 4.0K /srv 0 /sys 19M /tmp 1.1G /usr 94M /var# 2. 看看是哪个目录占的空间大,最终定位到目录或文件 [root@NEO ~]# du -sh /* |grep G du: cannot access `/proc/1894/task/1894/fd/4': No such file or directory du: cannot access `/proc/1894/task/1894/fdinfo/4': No such file or directory du: cannot access `/proc/1894/fd/4': No such file or directory du: cannot access `/proc/1894/fdinfo/4': No such file or directory 1.1G /usr [root@NEO ~]# du -sh /usr/* |grep G# du -sh 命令:查看每个目录占多大的空间; grep G 命令:查找占的空间大的目录# 3. 问清楚是否可以删除,然后再操作
企业案例:如果向磁盘写入数据提示如下错误: No space left on device (磁盘空间不足),通过 df -h 查看磁盘空间,发现没满,请问可能原因是什么?企业场景什么情况下会导致这个问题发生?
# 可能原因: inode 用完了# 创建环境的命令: mkdir -p /app/logs dd if=/dev/zero of=/dev/sdc bs=8k count=10 ls -l /dev/sdc mkfs.ext4 /dev/sdc # mkfs 是用来格式化的;mk -- make ,f -- file ,s -- system mount -o loop /dev/sdc /app/logs # mount 是 挂载 的命令 [root@NEO tmp]# cd /app/logs/ [root@NEO logs]# touch stu{1..6}.log touch: cannot touch `stu6.log': No space left on device [root@NEO logs]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 1.5G 6.9G 18% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot /dev/sdc 73K 14K 55K 21% /app/logs [root@NEO logs]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda3 593344 55426 537918 10% / tmpfs 60748 1 60747 1% /dev/shm /dev/sda1 51200 39 51161 1% /boot /dev/sdc 16 16 0 100% /app/logs [root@NEO logs]# # 从上面的示例,也是 block 还没用完, 但 inode 用完了
文件属性的文件类型:
- 指代 f,file,即 普通文件 d 指代 d,directory,目录 l 指代 l,softlink,软链接(相当于windows中的快捷方式)# linux下的普通文件也分为3种: [root@NEO lost+found]# ls -l /tmp/etc.tar.gz /bin/ls /etc/hosts -rwxr-xr-x. 1 root root 117048 Mar 23 2017 /bin/ls -rw-r--r--. 2 root root 180 Mar 14 18:35 /etc/hosts -rw-r--r-- 1 root root 9732526 Mar 16 02:45 /tmp/etc.tar.gz [root@NEO lost+found]# file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped # 可执行的文件(二进制文件,命令) [root@NEO lost+found]# file /etc/hosts /etc/hosts: ASCII text # 普通文本文件 [root@NEO lost+found]# file /tmp/etc.tar.gz /tmp/etc.tar.gz: gzip compressed data, from Unix, last modified: Sat Mar 16 02:45:23 2019 # 压缩包(数据文件,data) [root@NEO lost+found]# # file 命令: 显示文件的详细类型
扩展名:
windows 通过扩展名区分不同类型的文件 linux中,扩展名是用来给我们看的,你可以随便改,不影响使用,如下: [root@NEO ~]# mv /tmp/etc-exclude.tar.gz /tmp/etc.txt [root@NEO ~]# file /tmp/etc.txt /tmp/etc.txt: gzip compressed data, from Unix, last modified: Sat Mar 16 02:45:50 2019 [root@NEO ~]# # 并且 tar 命令也可以解压 etc.txt 文件# linux 中常见的扩展名: .sh # 脚本文件(把一堆命令放在一起,可以运行) .conf # 配置文件# 用户 和 用户组 简介: 对于一个文件/目录来说,用户可以分为3类:所有者,所属的用户组 和 陌生人 138447 drwxr-xr-x. 2 root root 4.0K Mar 8 15:55 data这个root 代指 所有者 这个root 代指所有者所属的组的名字(用户组)# 假设我是 oldboy 用户,那么我与这个文件有什么关系 ? # 查询用户信息的命令: id 用户名 # 包含 用户名 及其所属的 用户组(groups=) [root@NEO ~]# id oldboy uid=500(oldboy) gid=500(oldboy) groups=500(oldboy) [root@NEO ~]# # 所以 oldboy 用户 对于这个文件来说就是 陌生人# linux 中存在于系统中的用户如何分类 ? UID ===> user id, 用户的id号码,相当于 身份证号码,在系统中是唯一的 (UID用的比较多) GID ===> group id,用户组的id号码,相当于 户口本号码UID1. 皇帝 root 02. 傀儡 虚拟用户 1-499 作用:为了满足系统中每个进程要有一个对应的用户(虚拟用户是无法使用的,无法切换,即无法使用 su -)3. 贫民百姓 普通用户 500以上# 如何保护root用户? 1. 禁止root 远程登陆 2. 修改 ssh 默认的端口号 22 3. 定期分析 /var/log/secure (该文件记录着用户的登陆信息)
与用户有关的文件
/etc/passwd # 存放的是用户的信息 /etc/shadow # 存放的是用户密码的信息 /etc/group # 存放的是用户组的信息 /etc/gshadow # 存放的是用户组密码的信息# /etc/passwd [root@NEO ~]# cat /etc/passwd ... root :x:0 :0 :root :/root :/bin/bash oldboy:x:500 :500: :/home/oldboy :/bin/bash # 冒号是分隔符 # 第一列:用户名字 # 第二列:原来存放密码的地方 # 第三列:UID # 第四列:GID # 第五列:用户的说明信息(默认为空) # 第六列:用户的家目录 # 第七列:用户使用的shell(用户使用的命令解释器;centos 默认的 shell是 /bin/bash)# /bin/bash ---> centos 默认的命令解释器 # /sbin/bash ---> 也是命令解释器,但如果用户的命令解释器为 /sbin/bash,那么用户无法登陆系统(相当于傀儡用户)
linux 9位权限说明与计算
# 权限的种类: # r 4 ---> read;可以读取文件内容(可以用 cat 查看) # w 2 ---> write;可以修改文件内容 # x 1 ---> execute;可以运行文件 (命令、脚本) # - 0 ---> 什么权限都没有 [root@NEO ~]# ls -l /etc/hosts -rw-r--r--. 2 root root 180 Mar 14 18:35 /etc/hosts -rw-r--r--. # 第1个 - :文件类型为普通文件 # rw- :所有者拥有的权限; 420 --> 6 # r-- :用户组拥有的权限; 420 --> 4 # r-- :陌生人对这个文件拥有的权限; 420 --> 4
软链接 和 硬链接
# 软链接: # 软链接相当于 windows 中的快捷方式;也叫 符号链接# 怎么来的? # 创建软链接的命令: ln -s [root@NEO oldboy]# ln -s oldboy.txt oldboy.txt-soft [root@NEO oldboy]# ls -l oldboy.txt* -rw-r--r-- 1 root root 30 Mar 16 03:28 oldboy.txt lrwxrwxrwx 1 root root 10 Mar 19 04:42 oldboy.txt-soft -> oldboy.txt # 这个就是软链接 (软链接是一种新的文件类型)# 特点: 1. 存放着源文件的位置 2. 源文件被删除,软链接就找不到源文件 3. 主要是为了节约时间# 硬链接 # 硬链接相当于超市(即 文件内容)的前后门(即 文件),可通过不同的大门进入超市 # 在同一个分区(文件系统中),两个或多个文件的 inode 号码相同,则这些文件互为 硬链接 文件# 怎么来的? # 创建 硬链接 的命令: ln [root@NEO oldboy]# ln oldboy.txt oldboy.txt-hard [root@NEO oldboy]# ls -lhi oldboy.txt* 140131 -rw-r--r-- 2 root root 30 Mar 16 03:28 oldboy.txt 140131 -rw-r--r-- 2 root root 30 Mar 16 03:28 oldboy.txt-hard # 查看硬链接会涉及到 inode 号码,所以要用 -lhi ;上面的 2 表示 硬链接数量 (即文件有几个入口)# 特点: 1. 硬链接相当于 超市的入口,硬链接的数量就是 文件一共有多少个入口 2. 假设硬链接数是2,删除硬链接或源文件后,文件还能断续使用;如果硬链接和源文件都被删除,则该文件被删除(即 硬链接数量为0)# 硬链接主要用于防止文件被误删,但硬链接不能防止文件被误清空、误修改(此时需要备份 cp;备份会占用更多的空间,但硬链接不会多占空间)# 软链接 和 硬链接的区别(面试题): 解答: 1)如何创建:a) 默认不带参数情况下, ln 命令创建的是硬链接,带 -s 参数的 ln 命令创建的是软链接 2)含义:a) 硬链接文件与源文件的 inode 节点号相同,而软链接文件相当于 windows 下面的 快捷方式 (inode节点号与源文件不同) 3)特点:a) 不能对目录创建硬链接(只能对文件创建硬链接),但可以创建软链接,对目录的软链接会经常用到b) 软链接可以跨文件系统,硬链接不可以跨文件系统 4)怎么没的?(源文件、软链接、硬链接与删除)a) 删除软链接文件,对源文件及硬链接文件无任何影响b) 删除文件的硬链接文件,对源文件及软链接文件无任何影响c) 删除软链接文件的源文件,对硬链接文件无影响,但会导致其软链接失效(红底白字闪烁状)d) 同时删除源文件及其硬链接文件,整个文件才会被真正的删除
linux 中彻底删除一个文件的原理:
1) 删除这个文件所有相关的硬链接 - rm (rm命令删除的是硬链接,只是删除了文件的入口) 2) 这个文件的进程调用数也为0
linux 中彻底删除一个文件的条件:
1. 硬链接数量为0 2. 进程调用数为0# 磁盘空间不足:某个文件没有被彻底删除,导致的磁盘空间满了# 一般情况下,大多数服务(包括脚本)在运行时,是不能删除当前正在写入的日志文件的 # 解决办法: 查找机器自身的服务,然后重启 apache 和 tomcat# 模拟的思路:向 /var/log/secure 追加8亿行,然后删除该文件 (因为这个文件一直在运行) [root@NEO ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 1.5G 7.0G 18% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot [root@NEO ~]# seq 800000000 >>/var/log/secure ^C [root@NEO ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 8.8G 0 100% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot [root@NEO ~]# du -sh /* |grep G du: cannot access `/proc/1656/task/1656/fd/4': No such file or directory du: cannot access `/proc/1656/task/1656/fdinfo/4': No such file or directory du: cannot access `/proc/1656/fd/4': No such file or directory du: cannot access `/proc/1656/fdinfo/4': No such file or directory 1.1G /usr 7.5G /var [root@NEO ~]# du -sh /var/* |grep G 7.4G /var/log [root@NEO ~]# du -sh /var/log/* |grep G 7.4G /var/log/secure [root@NEO ~]# \rm -f /var/log/secure [root@NEO ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 8.8G 0 100% / ### 删除 /var/log/secure 后 磁盘仍然被占满 tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot [root@NEO ~]# du -sh /* |grep G du: cannot access `/proc/1664/task/1664/fd/4': No such file or directory du: cannot access `/proc/1664/task/1664/fdinfo/4': No such file or directory du: cannot access `/proc/1664/fd/4': No such file or directory du: cannot access `/proc/1664/fdinfo/4': No such file or directory 1.1G /usr # 显示磁盘只占用了 1.1 个 G [root@NEO ~]# lsof |grep delete rsyslogd 1236 root 2w REG 8,3 7867312270 260317 /var/log/secure (deleted) # (deleted) --- 标记,表示这个文件的硬链接数量为0、但进程调用数不为0 软件名称 软件大小(单位为字节) 文件名# 原因:系统中某个文件没有被彻底删除# 如何找出硬链接数为0,进程调用数不为0 的文件? # lsof 命令: 能显示出系统中所有的文件 # 解决办法:重启反对应的软件/服务 [root@NEO ~]# /etc/init.d/rsyslog restart # 重启 /etc/log/secure 的命令 Shutting down system logger: [ OK ] Starting system logger: [ OK ] [root@NEO ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 8.8G 1.5G 7.0G 18% / # 此时磁盘空间就恢复了 tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot
磁盘空间不足案例总结:
1. block 满了: 如正常 500G的空间但存放了501G的视频 2. inode 满了:大量的小文件 3. block满了:文件没有被彻底删除导致磁盘空间不足;硬链接数为0 但进程调用数不为0
Linux 文件属性之 三种时间
linux修改、访问、改变时间简介:
# mtime :modified time,文件的修改时间 --- 文件内容的变化时间(最常用的时间, ls -l 命令显示的也是文件的修改时间) # ctime :change time , 文件属性的改变时间,如 硬链接数量、文件大小、文件权限等 # atime :access time ,文件的访问时间 (cat 一次)# stat 命令: 显示文件的三种时间 [root@NEO ~]# cd /oldboy/ [root@NEO oldboy]# ls -l oldboy.txt -rw-r--r-- 2 root root 30 Mar 16 03:28 oldboy.txt [root@NEO oldboy]# stat oldboy.txtFile: `oldboy.txt' Size: 30 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 140131 Links: 2 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-03-16 03:29:35.999220892 +0800 Modify: 2019-03-16 03:28:38.741224512 +0800 Change: 2019-03-19 04:58:46.160174337 +0800 [root@NEO oldboy]# [root@NEO oldboy]# echo hello >>oldboy.txt [root@NEO oldboy]# stat oldboy.txtFile: `oldboy.txt' Size: 36 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 140131 Links: 2 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-03-16 03:29:35.999220892 +0800 Modify: 2019-03-25 05:25:10.432437899 +0800 Change: 2019-03-25 05:25:10.432437899 +0800 [root@NEO oldboy]# # 上面的ctime 改变是因为文件大小变了# ctime 时间的改变: 如添加硬链接 [root@NEO oldboy]# ln oldboy.txt oldboy.txt-hard [root@NEO oldboy]# stat oldboy.txtFile: `oldboy.txt' Size: 36 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 140131 Links: 2 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-03-16 03:29:35.999220892 +0800 Modify: 2019-03-25 05:25:10.432437899 +0800 Change: 2019-03-25 05:29:54.906456408 +0800 [root@NEO oldboy]# # 添加硬链接时,只有 ctime 时间改变# 这三种时间是文件属性的一部分,文件属性又都放到 inode 中,inode 又放在硬盘里 # atime [root@NEO oldboy]# stat oldboy.txtFile: `oldboy.txt' Size: 36 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 140131 Links: 2 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-03-16 03:29:35.999220892 +0800 Modify: 2019-03-25 05:25:10.432437899 +0800 Change: 2019-03-25 05:29:54.906456408 +0800 [root@NEO oldboy]# cat oldboy.txt I am oldboy,myqq is 123456789 hello [root@NEO oldboy]# stat oldboy.txtFile: `oldboy.txt' Size: 36 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 140131 Links: 2 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-03-25 05:35:31.232457722 +0800 Modify: 2019-03-25 05:25:10.432437899 +0800 Change: 2019-03-25 05:29:54.906456408 +0800 [root@NEO oldboy]# # 注意:只有修改文件内容后的那次 cat 文件,文件的 atime 才能改变
转载于:https://www.cnblogs.com/neozheng/p/10545204.html
Linux(4):文件属性相关推荐
- linux把目录下的文件设置属性为rx,LINUX的文件属性与目录配置
LINUX的文件属性与目录配置 发布时间:2008-03-20 10:28:46来源:红联作者:cnbtoo -rwxrwxrwx 1 root root 293 Oct 19 21:24 test ...
- chmod 755和chmod +x 区别 | Linux修改文件属性 | 小白笔记
Linux chmod命令 修改文件属性 参考链接:菜鸟教程 Linux修改文件属性 | 小白笔记 认识 chmod 命令 chmod 755和chmod +x 区别 认识 chmod 命令 理解 数 ...
- linux的文件属性和权限学习——分析ls命令结果
转自: http://blog.csdn.net/daheiantian/article/details/5974962 最近阅读<鸟哥的linux私房菜>,确实是一本好书,使自己在文件属 ...
- 八.linux系统文件属性知识
1.文件属性权限是12位,现在只看9位,其中每3个一组,为:属主权限.属组权限.其他权限,其中r可读,w可写,x可执行,如图: 2.文件属性之软硬链接 linux系统中有两种链接,为硬链接(ln) ...
- Linux—目录文件属性和权限管理详解
关注微信公众号:CodingTechWork,一起学习进步. 引言 Linux中了解用户和用户组概念后,我们就需要对文件目录进行赋权操作,以便于文件访问权限的管控,这就涉及到文件的属性,那用户和用 ...
- Linux系统文件属性
在 Linux 中第一个字符代表这个文件是目录.文件或链接文件等等. 当为 d 则是目录 当为 - 则是文件: 若是 l 则表示为链接文档(link file): 若是 b 则表示为装置文件里面的可供 ...
- Linux CentOS7 文件属性
目录 一.简介 二.应用 2.1.概述 2.2.linux文件属主和属组 2.3.更改文件属性 2.3.1.chgrp:更改文件属组 2.3.2.chgrp --help 2.3.3.chown:更改 ...
- linux下文件属性rwxr,Linux文件的权限[srwxr-xr-x]
Linux文件的权限[srwxr-xr-x] 发布时间:2018-07-28 09:37, 浏览次数:1288 , 标签: Linux srwxr xr 一.UNIX下关于文件权限的表示方法和解析 U ...
- Linux基础——文件属性和权限
文件属性和权限 文件属性和权限是什么? 文件属性 修改文件属性 修改group 修改owner 修改权限 修改时间 权限对于文件和目录的区别 umask和预设权限 隐藏属性--chattr 特殊权限 ...
- linux文件属性解析,Linux操作系统的文件属性与目录配置解析
-rwxrwxrwx 1 root root 293 Oct 19 21:24 test 第一列表示这个文件的属性 第二列表示连接占用的节点 第三列表示文件(或目录)的拥有者 第四列表示拥有者的用户组 ...
最新文章
- 认识flask框架-2
- 栈和队列互相实现,一文弄懂它们的关系
- Android 每天定时提醒功能实现
- UBuntu国内镜像地址下载
- Xcode命令行生成Bitcode静态库
- Java.io.File.getPath()方法实例
- java的excel导出_java 实现excel 导出功能
- 2021年五一杯数学建模A题(疫苗生产调度问题)详细分析
- android activity详解一:概述
- 利用RecyclerView实现无限轮播广告条
- mysql codesmith_codesmith连接Mysql
- 鸿蒙桌面设置教程,鸿蒙系统桌面怎么设置好看?好看的鸿蒙系统手机桌面设置布局推荐...
- AUTOCAD——文字样式
- gitbub 创建本地仓库注意点。
- Vim光标定位操作快捷键
- jenkins集成自动化配置(二) 创建项目和项目配置
- STM32——理解时钟系统
- SaaS(1)---什么是SaaS系统
- C语言程序设计简谐运动的模拟,C语言课程设计简谐振动实验的模拟.doc
- 实验内容:编写程序,模拟抓狐狸小游戏。假设一共有一排5个洞口,小狐狸最开始的时候在其中一个洞口,然后玩家随机打开一个洞口,如果里面有狐狸就抓到了。如果洞口里没有狐狸就第二天再来抓,但是第二天狐狸会在
热门文章
- 钢铁力量服务器维护,钢铁力量入门攻略 Iron force新手技巧
- web前端之JavaScript的插件下载指令及介绍、npm、install、save、require
- Nvidia Tesla和Quadro、GeForce的区别
- Storm-实时计算系统
- Rockchip RK3588如何创建新一个新板级DTS
- css三角形之美与品优购项目
- 解决Win11(Win10同样适用)“弹出USB Attached SCSI(UAS)大容量存储设备时出问题”
- 2014 android 机型排行,2014年1月份10大畅销Android智能手机排名(图)
- 洛谷小游戏大全(用洛谷的人都得知道)
- Oracle 主外键约束