重点:打包、管道、find查找、PATH变量
文件属性:文件的大小 时间 类型 权限
索引节点:文件的唯一标识(相当于人的身份证)
进程号:进程的唯一标识
- [root@oldboyedu ~]# ls -lhi
total 24K
16964029 drwxr-xr-x. 2 root root 6 Mar 7 10:56 test
33631865 -rw-r--r--. 1 root root 24 Mar 13 11:46 test.txt
33631864 -rw-r--r--. 1 root root 54 Mar 13 10:26 test.txt.ori
1 2 3 4 5 6 7 8 9 10
共10列
- 第一列:inode索引节点编号(相当于人的身份证、家庭住址,全国唯一);
系统读取文件时首先通过文件名找到inode号码,然后才能读取到文件内容。 - 第二列:文件类型及权限。这一列共11个字符,其中第一个字符为文件类型,随后的9个字符为文件的对应权限,
最后一个字符点号“.”是和selinux有关的一个标识;(1、selinux是让Linux系统更安全的一套规则。这个规则太严格了,一般的情况下都会关闭selinux。一般利用自己开启防火墙之类的,用其他手段来实现同样的安全目的。
怎么关掉Selinux?
查看方法:
[root@oldboyedu ~]# getenforce
Enforcing
临时关掉:
[root@oldboyedu ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
[root@oldboyedu ~]# setenforce 0
[root@oldboyedu ~]# getenforce
Permissive
永久关闭:
vim /etc/selinux/config
[root@oldboyedu ~]# grep dis /etc/selinux/config
disabled - No SELinux policy is loaded.
SELINUX=disabled) - 第三列: 硬连接数
- 第四列: 属主:文件的拥有者,用户
- 第五列: 属组:文件属于的组,用户组
- 第六列: 大小
- 第七列: 月份
- 第八列: 日
- 第九列: 时间
- 第十列: 文件名
2. Linux中的文件类型
“-” 普通文件
创建方式:vim touch echo cat——拷贝、移动:cp mv——删除:rm
三种类型:
a:纯文本文件(字符数字等内容)
b:数据文件(存放命令的信息)
c:二进制文件(可执行的命令)"d"目录——创建:mkdir -p——复制:cp -a/-r——删除:rm -rf
区分:
a:开头为d
b:颜色为蓝色
c:ls -p,目录结尾加斜线-
l开头表示软链接文件
软链接:快捷方式
以c开头的就是字符设备,猫等串口设备(character)
以b开头的就是块设备 硬盘、光驱等都属于块设备(block)
以s开头套接口文件(socket)
.sock文件也是一类特殊的文件,这类文件通常用在网络之间,进行数据连接,如:我们可以启动一个程序来监听客户端的请求,客户端可以通过套接字来进行数据通信。
用于进程之间通信的文件。以p开头表示管道文件
2.which:查命令所在路径
- [root@oldboyedu ~]# which cp
alias cp='cp -i'
/usr/bin/cp - [root@oldboyedu ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls - [root@oldboyedu ~]# which ip
/usr/sbin/ip
3. PATH 变量作用
命令行执行命令会从PATH 对应的路径中查找命令,PATH 对应的路径中没有这个命令就会报command not found
[root@oldboyedu ~]# ff
-bash: ff: command not found
[root@oldboyedu ~]# cd /usr/local/sbin
[root@oldboyedu /usr/local/sbin]# vim ff
[root@oldboyedu /usr/local/sbin]# cat ff
echo $1
[root@oldboyedu /usr/local/sbin]# chmod +x ff[root@oldboyedu ~]# fff
-bash: fff: command not found
[root@oldboyedu ~]# ff[root@oldboyedu ~]# ff oldboy
oldboy
[root@oldboyedu ~]# ff oldgirl
oldgirl
[root@oldboyedu ~]# echo oldgirl
oldgirl
[root@oldboyedu ~]# which ff
/usr/local/sbin/ff
4. whereis:显示目录及其相关文件全路径
- -b 只查找二进制命令
- whereis:显示命令、源码、说明文档等的路径
locate:[root@oldboyedu ~]# whereis -b cp
cp: /usr/bin/cp
5. locate命令
- locate:快速定位文件路径
locate查找文件路径,是从数据库A(/var/lib/mlocate/mlocate.db)里查询
更新A数据库用updatedb命令
C7默认没安装
yum provides locate #《==查看命令对应的软件包
yum install mlocate -y
[root@oldboyedu ~]# locate cp
locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory
[root@oldboyedu ~]# updatedb
[root@oldboyedu ~]# locate cp
/boot/grub2/i386-pc/acpi.mod
/boot/grub2/i386-pc/cpio.mod
6. find:查找命令下的文件
-
-name 代表通过名字查找
查找原理:磁盘遍历、速度慢
-
*代表模糊查找
-
-type 按文件类型查找
-
-mtime 按时间查找 +3代表3天以前 -3代表3天之内
-
-a and 并且
-o or 或者
! 取反
-exec \ 代表转义字符,打回原形 、一般命令结尾都有;只不过是隐藏的,只不过这个要加出来
7. xargs 分组临时显示
-
-d 是指定分隔符 如果不指定 默认是空格
-
-i 后接大括号 括号代表文件查找的内容
8. 特殊字符:| 管道的意思-----------标准删除
- [root@oldboyedu /data]# find /data -type f|xargs rm -f
[root@oldboyedu /data]# ll
total 0
drwxr-xr-x. 2 root root 6 Mar 14 10:40 a
drwxr-xr-x. 2 root root 6 Mar 14 10:40 b
drwxr-xr-x. 2 root root 6 Mar 14 10:40 c
drwxr-xr-x. 2 root root 6 Mar 14 10:40 d
[root@oldboyedu /data]# touch oldboy{1..5}.txt
[root@oldboyedu /data]# ls
a b c d oldboy1.txt oldboy2.txt oldboy3.txt oldboy4.txt oldboy5.txt
[root@oldboyedu /data]# find /data -type f -exec rm -f {} ;
[root@oldboyedu /data]# ls
a b c d
find /data -type f -exec rm -f {} ;
相当于
rm -f oldboy1.txt
rm -f oldboy2.txt
rm -f oldboy3.txt
效率低。find /data -type f|xargs rm -f
只是一条命令
rm -f oldboy1.txt oldboy2.txt oldboy3.txt
效率高find /data -type f|rm -f
相当于:
find /data -type f
rm -f
9. date命令 显示系统时间
-s 修改时间
[root@oldboyedu /data]# date -s "2020/10/1 00:00:00"
Thu Oct 1 00:00:00 CST 2020
[root@oldboyedu /data]# date
Thu Oct 1 00:00:03 CST 2020
[root@oldboyedu /data]# clock -w
-
显示格式
- -d 显示改变后的时间
[root@oldboyedu /data]# date +%F -d "-1day"
2020-09-30
[root@oldboyedu /data]# date +%F -d "+1day"
2020-10-02
[root@oldboyedu /data]# date +%F -d "+1month"
2020-11-01
[root@oldboyedu /data]# date +%F -d "+1Y"
date: invalid date ‘+1Y’
[root@oldboyedu /data]# date +%F -d "+1year"
2021-10-01
10. tar打包
语法:
tar 参数 筐(压缩包) 苹果(被打包的文件)
打包集合参数zcvf:v可以不加
压缩包名字:data.tar.gz #tar表示打包,gz表示gzip格式压缩。
例子:
[root@oldboyedu ~]# mkdir /data
[root@oldboyedu ~]# cd /data
[root@oldboyedu /data]# touch {1..5}.txt
[root@oldboyedu /data]# ls
1.txt 2.txt 3.txt 4.txt 5.txt
[root@oldboyedu /data]# cd ..
[root@oldboyedu /]# tar zcvf /opt/data.tar.gz ./data
./data/
./data/1.txt
./data/2.txt
./data/3.txt
./data/4.txt
./data/5.txt
查看压缩包里的内容:-t
[root@oldboyedu /]# tar tf /opt/data.tar.gz
./data/
./data/1.txt
./data/2.txt
./data/3.txt
./data/4.txt
./data/5.txt解压:
[root@oldboyedu /opt]# tar zxvf data.tar.gz
./data/
./data/1.txt
./data/2.txt
./data/3.txt
./data/4.txt
./data/5.txt
[root@oldboyedu /opt]# ls
data data.tar.gz
[root@oldboyedu /opt]# ls data
1.txt 2.txt 3.txt 4.txt 5.txt
[root@oldboyedu /opt]# tar xf data.tar.gz-C代表指定路径[root@oldboyedu /opt]# tar xf data.tar.gz -C /tmp/
[root@oldboyedu /opt]# ls /tmp/data
1.txt 2.txt 3.txt 4.txt 5.txt
Linux里防火墙C6 iptables C7 firewalld
作用:防护计算机,防止被入侵。
systemctl status firewalld.service
开启firewalld(C6 service iptables start 或者/etc/init.d/iptables start)
[root@oldboyedu ~]# systemctl start firewalld.service
[root@oldboyedu ~]# systemctl status firewalld.service
firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2020-10-04 20:48:49 CST; 1s ago
Docs: man:firewalld(1)
Main PID: 7003 (firewalld)
CGroup: /system.slice/firewalld.service
└─7003 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
Oct 04 20:48:48 oldboyedu systemd[1]: Starting firewalld - dynamic firewall daemon...
Oct 04 20:48:49 oldboyedu systemd[1]: Started firewalld - dynamic firewall daemon.让firewalld开机自启动
[root@oldboyedu ~]# systemctl enable firewalld.service
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.C6用法:chkconfig iptables off
C7就是一个命令systemctl
自学能力:总结两个命令systemctl和chkconfig。