Linux常用命令-基础部分

  • A+
所属分类:linux技术
摘要

Linux介绍Linux是一款开源的操作系统,免费,开源,安全,高效,处理高并发非常强悍,很多企业级开发项目都部署在Linux/UNIX上。
创始人:Linus Torvalds 林纳斯
Linux吉祥物:企鹅——tux
Linux主要发行版:
CentOS、Redhat、Ubuntu、Suse、红旗Linux
目前主要操作系统
windows、android、车载系统、MacOS、iOS、Linux、unix
安装
VMvare
ContOS
虚拟机的网络连接三种形式说明
桥街模式
好处:Linux可以和其他系统通信
弊端:可能造成ip地址冲突
NAT模式
网络地址转换方式:Linux可以访问外网,不会造成ip地址冲突
仅主机模式
你的虚拟机是一个独立的主机,不能访问外网
终端使用和联网
终端
点击鼠标右键,即可选择打开
联网
linux目录结构
/根目录
/opt 一些大型软件安装目录,或一些服务程序的安装目录
/usr/local 自己安装软件的目录,相当于win的programefiles
/etc 存放所有系统管理所需要的配置文件和子目录
/dev 管理外部设备(硬件映射为文件)
/lib 系统最基本的动态连接共享库类似于winDDL文件
/lost+found 一般是空的,非法关机后 会出现一些文件
/media 自动识别一些设备如U盘等,识别后会将设备挂载到这个目录
/mnt 用户挂载别的文件系统,将光驱挂载上去,就可以在/mnt/上查看光驱文件内容了
/proc 虚拟目录,系统内存的映射,访问这个目录来获取系统信息
/sbin 系统管理员的系统管理程序
/srv 服务器启动后需要重启的数据
/sys 2.6内核很大的变化,安装了2.6内核中新出现的文件系统sysfs
/tmp 临时文件
/usr/bin 系统用户使用的应用程序
/usr/sbin 超级用户数使用的比较高级的管理程序和系统守护程序
usr/src 内核源代码默认放置目录
/var 存放不断扩充的东西,习惯将经常被修改的目录放在这里,包括各种日志文件
/bin 常用的指令
/home 用户主目录(每个用户都会有自己的目录,一般以用户账号命名)
/root 系统管理员 超级权限用户的主目录
/boot 启动Linux的核心文件,包括一些连接文件和镜像文件
/run 临时文件系统,存储系统启动以来的信息,重启时被删除或清除

Linux介绍

Linux是一款开源的操作系统,免费,开源,安全,高效,处理高并发非常强悍,很多企业级开发项目都部署在Linux/UNIX上。
创始人:Linus Torvalds 林纳斯
Linux吉祥物:企鹅------tux
Linux主要发行版:
CentOS、Redhat、Ubuntu、Suse、红旗Linux
目前主要操作系统
windows、android、车载系统、MacOS、iOS、Linux、unix
安装
VMvare
ContOS
虚拟机的网络连接三种形式说明
桥街模式
好处:Linux可以和其他系统通信
弊端:可能造成ip地址冲突
NAT模式
网络地址转换方式:Linux可以访问外网,不会造成ip地址冲突
仅主机模式
你的虚拟机是一个独立的主机,不能访问外网
终端使用和联网
终端
点击鼠标右键,即可选择打开
联网
linux目录结构
/根目录
/opt 一些大型软件安装目录,或一些服务程序的安装目录
/usr/local 自己安装软件的目录,相当于win的programefiles
/etc 存放所有系统管理所需要的配置文件和子目录
/dev 管理外部设备(硬件映射为文件)
/lib 系统最基本的动态连接共享库类似于winDDL文件
/lost+found 一般是空的,非法关机后 会出现一些文件
/media 自动识别一些设备如U盘等,识别后会将设备挂载到这个目录
/mnt 用户挂载别的文件系统,将光驱挂载上去,就可以在/mnt/上查看光驱文件内容了
/proc 虚拟目录,系统内存的映射,访问这个目录来获取系统信息
/sbin 系统管理员的系统管理程序
/srv 服务器启动后需要重启的数据
/sys 2.6内核很大的变化,安装了2.6内核中新出现的文件系统sysfs
/tmp 临时文件
/usr/bin 系统用户使用的应用程序
/usr/sbin 超级用户数使用的比较高级的管理程序和系统守护程序
usr/src 内核源代码默认放置目录
/var 存放不断扩充的东西,习惯将经常被修改的目录放在这里,包括各种日志文件
/bin 常用的指令
/home 用户主目录(每个用户都会有自己的目录,一般以用户账号命名)
/root 系统管理员 超级权限用户的主目录
/boot 启动Linux的核心文件,包括一些连接文件和镜像文件
/run 临时文件系统,存储系统启动以来的信息,重启时被删除或清除

虚拟机的克隆
如果 以及安装了一台Linux 操作系统,如果还需要更多,没必要重新安装,只需要克隆已有的就可以。

方式一,直接拷贝一份安装好的虚拟机文件
方式二,使用vmvare的克隆操作注意,克隆时,需要先关闭Linux操作系统
虚拟机快照
如果在使用虚拟机系统时(比如Linux),你想回到 原先的某一个状态,也就是说你担心可能有些误操作造成的系统异常,需要回到原先的某种正常运行的状态,vmvare也提供了这样一个功能,就叫快照管理。
安装vmtools
vmtools安装后,可以让我们在windows下更好的管理vm虚拟机
可以设置windows和centos的共享文件夹
安装过程:
进入centos
点击vm菜单虚拟机的install vmware tools
centos会出现一个vm的安装包,xx.tar.gz
拷贝到/opt
使用解压命令tar,得到一个安装文件
cd /opt/
tar -zxvf xx.tar.gz
回车
进入该vm解压目录,/opt目录下
cd vm.....tools....../
安装./vmware-install.pl
全部使用默认设置即可,就可以安装成功
注意:安装 vmtools需要有gcc
vi和vim
vi内建的 文本编辑器
vim具有程序编辑功能,可以看作是增强版的vi
三种常用的模式
正常模式(常用模式,一般模式)
以vim打开一个档案就直接进入了这一模式了,在这个模式中,可以使用快捷键,可以使用上下左右按键来移动光标,可以使用删除字符和 删除整行来处理档案内容,也可以使用复制粘贴来处理文件数据
插入模式(编辑模式)
按下i,I,o,O,a,A,r,R可以进入,在这个模式下,可以编辑内容
按:进入命令行模式
命令行模式
提供你的相关指令,完成读取、存盘、替换、离开、vim、显示行号等动作
先按esc回到一般模式,在输入:,可进入命令行模式
输入wq,保存退出
q退出
q! 强制退出且不保存

快捷键练习:

(一般模式下)拷贝当前行 yy;拷贝当前行向下的5行 5yy;粘贴(输入p);
删除当前行 dd; 删除当前行向下的5行 5dd;
在文件中查找某个单词[命令模式下输入/关键字,回车查找,输入n就是查找下一个]
设置文件行号:[命令模式下输入:set nu和:set nonu]
定位到文件的首行和末行[首行 gg 末行 G]
文件中输入“Hello”,要撤销这个动作 在一般模式下输入 u;
将光标移动到10行 先输入10 然后按shift+g

磁盘分区挂载

分区:
1、 Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux中每个分区都是用来组成整个文件系统的一部分。
2、 Linux采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目 录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一 个目录下获得。
(1) mbr分区:
①最多支持四个主分区
②系统只能安装在主分区
③扩展分区要占一个主分区
④MBR最大只支持2TB,但拥有最好的兼容性
(2) gtp分区:
① 支持无限多个主分区(但操作系统可能限制,比如 windows下最多128个分区)
② 最大支持18EB的大容量(1EB=1024 PB,1PB=1024 TB )
③ windows7 64位以后支持gtp
1、 Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。
2、 对于IDE硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指 IDE硬盘了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属 盘),“~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就 是逻辑分区。例,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为 第二个IDE硬盘上的第二个主分区或扩展分区。
3、 对于SCSI硬盘则标识为“sdx~”,SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余 则和IDE硬盘的表示方法一样。
查看磁盘状态,命令:
fdisk -l

linux分区
1、查看系统的分区和挂载情况 ,命令 :
lsblk 或者 lsblk -f

2、如何增加一块硬盘

  1. 虚拟机添加硬盘

2)分区
分区命令
fdisk /dev/sdb

开始对/sdb分区
• m 显示命令列表
• p 显示磁盘分区 同 fdisk –l
• n 新增分区
• d 删除分区
• w 写入并退出 说明: 开始分区后输入n,新增分区,然后选择p ,分区类型为主分区。两次回车默认剩 余全部空间。最后输入w写入分区并退出,若不保存退出输入q。

  1. 格式化
    格式化磁盘 分区命令:
    mkfs -t ext4 /dev/sdb1
    其中ext4是分区类型

  2. 挂载
    挂载: 将一个分区与一个目录联系起来,
    • mount 设备名称 挂载目录
    • 例如: mount /dev/sdb1 /newdisk
    • umount 设备名称 或者 挂载目录
    • 例如: umount /dev/sdb1 或者 umount /newdisk 虚拟机增加硬盘步骤

  3. 设置可以自动挂载 (永久挂载)
    通过修改/etc/fstab实现挂载 添加完成后 执行mount –a 即刻生效 • 用命令行挂载重启后会失效

磁盘情况查询
基本语法:
df -hl

2、把/dev/sdb1在/home/newdisk下的挂载给清除掉
第一种方式:umount /dev/sdb1 /home/newdisk

第二种方式:
umount /home/newdisk

3、查询指定目录的磁盘占用情况
基本语法 du -h
-s 指定目录大小汇总
-h带计量单位
-a 含文件
--max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值

统计/home文件夹下文件的个数

ls -l /home | grep "^-" | wc -l

^是定位符 - 开头的是文件 wc是统计

统计/home文件夹下目录的个数

ls -l /home | grep "^d" | wc -l

^是定位符 d开头的是文件"^-" wc 是统计

统计/home文件夹下包括子文件夹里的文件

ls -lR /home |grep "^-" | wc -l

R是递归的扫描

统计/home文件夹下包括子文件夹里的目录

ls -lR /home |grep "^d" | wc -l

以树状形式显示目录结构

tree

此时发现tree指令不存在,我们可以通过yum指令去安装 即

yum install tree

此时我们就可以运用tree指令去显示目录结构

关机重启注销登录

关机重启
shutdown -h now 立刻进行关机
shutdown -h 1 1分钟后关机
shutdown -r now 现在重启计算机
halt 关机
reboot 现在重启计算机
sync 把内存的数据同步到磁盘

细节
不管重启系统还是关闭系统,首先要执行sync命令,把内存数据写入到磁盘中
目前shutdown/reboot/halt等命令已经在关机之前进行了sync,,但小心驶得万年船
登录注销
登录时尽量少用root账号登录,因为他是系统管理员,超级用户,最大权限,避免操作失误,可以利用普通用户登录,登录后在使用“su-用户名”命令来切换成系统管理员身份
在提示符下输入logout即可注销用户
logout注销指令在图形运行级别无效,在运行级别3下有效

用户管理 运行级别 帮助指令

linux是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统
基本语法

添加用户 useradd 用户名
设置密码 passwd 用户名
回车
输入密码
确认密码
当创建一个用户后,会自动的创建和用户同名的家目录
每个用户都有自己的家目录,默认在 /home文件夹下
也可以通过“useradd -d 指定目录 新的用户名”,给新创建的用户指定家目录
删除用户 userdel 用户名
删除用户,但保留家目录 userdel 用户名
删除用户及家目录 userdel -r 用户名
查询用户信息指令 id 用户名
切换用户 su - 用户名
高权限用户切换到低权限用户不需要输入密码
查看第一次登录到系统的用户信息 who am i
用户组
类似于角色,系统可以对有共性/相同权限的多个用户进行统一管理
新增组 groupadd 组名
删除组 groupdel 组名
添加用户时直接加上组 useradd -g 组名 用户名
修改用户的组 usermod -g 组名 用户名
用户和组相关的文件
/etc/passwd文件
用户的配置文件,记录用户的各种信息
每行的含义:用户名:口令:用户标识号(uid):组标识号(gid):注释性描述:主目录(家目录):登录的Shell
/etc/shadow 文件
口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group 文件
组的配置文件,记录Linux包含的组的信息
每行含义:组名:口令:组标识号:组内用户列表
指定运行级别
0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别是3和5,也可以指定默认运行级别
切换运行级别命令: init 运行级别 (如:init 3 切换到运行级别3)
查看当前运行级别: systemctl get-default
切换默认运行级别: systemctl set-default 要切换的运行级别
帮助指令
man 获得帮助信息
基本语法:man [命令或配置文件](功能描述:获得帮助信息)
案例:查看ls命令的帮助信息 man ls
获得内置命令的帮助信息

文件目录类

指令的选项可以同时使用  如ls -la或ls -al
pwd 显示当前绝对路径
ls 查看当前路径下的文件
-a   显示当前目录所以文件和目录,包括隐藏的
-l   以列表的形式显示
cd 绝对路径或相对路径(功能描述:切换到指定目录)
cd ~ 或者cd 回到自己的家目录
cd ..回到当前目录的上一级目录
例: cd ../文件夹名 先回到上一级 ,在进入这个文件夹
mkdir (路径/)目录名 用于创建目录
-p 用于创建多级目录
例: 创建在home目录下创建wang目录,并在wang目录下创建jie目录
mkdir /home/wang/jie -p
rmdir 目录名 删除空目录(如果目录下有内容是无法删除的)
rm -rf (路径/)目录名 可删除目录下有内容的目录
touch 文件名称 创建空文件
例 touch hello.txt 创建一个hello.txt空文件
touch 文件1 文件2 ........ 创建多个空文件
cp 要拷贝的文件 拷贝到的指定目录 (拷贝文件到指定目录(cp 强制覆盖))
-r 递归拷贝
将/home/test/目录及目录下的所以文件拷贝到/home/z/目录下
cp -r /home/test/ /home/z/
rm 要删除的文件或目录 (删除目录或文件)
-r 递归删除整个文件夹
-f 强制删除不提示
mv 参数1 参数2
当mv命令中的第二个参数类型(目标)是文件时,实现重命名源文件或目录的功能,记住这里源文件或目录只能有一个,因为如果有多个时,会存在命名冲突的问题 。
当mv命令中的第二个参数类型(目标)是目录时,实现的是移动源文件和目录的功能,这里源文件或目录可以有多个,mv命令会将源文件或目录移动到目标目录下。
-b 覆盖之前先备份
-f 强制覆盖
-i 覆盖时询问
-u 当原文件是最新更新时,才可以覆盖目标文件

-t 当有多个原文件时,使用这种方法。但目标文件在前,原文件在后 空格隔开
cat 要查看的文件 查看文件内容
-n 显示行号
| more 分页显示
空格 向下翻页
Enter 向下一行
q 立刻离开more
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
less 文件名 分页查看文件内容(比more强大,并不是将整个文件加载后显示,而是根据显示需要加载内容,对于大文件显示具有较高的效率)
空格 下翻一页
pagedown 下翻一页
pageup 上翻一页
/字串 向下搜寻字串的内容;n:向下查找 N:向上查找
?字串 向上搜寻字串内容 n:向上查找 N:向下查找
q 离开less

输出重定向 >>追加
没有目标文件便创建
ls -l > 文件 列表的内容写入文件(覆盖写入)
ls -l >> 文件 列表内容追加到文件末尾
cat 文件1 > 文件2 将1的内容覆盖到2
echo "内容" >> 文件 将""中内容追加到文件 (>时覆盖)
cal >> 文件 将日历追加到文件(>覆盖)
echo 输出内容到控制台
echo $PATH 输出环境变量
echo "内容" 输出内容
head 文件 显示文件开头内容 默认显示文件前十行内容
-n 5 显示前五行 5可以是任意数字 显示前任意行
tail 文件 显示文案金尾部内容 默认显示后十行内容
-n 5 显示后五行 5可以任意数 显示后任意行
-f 实时追踪该文档所以更新 (经常使用)
ln 软链接
ln -s 要链接的目录 软链接名(路径没变 但内容指向到了要链接的目录)
rm -rf 软连接名 删除软连接(软连接名后不要加/)
使用pwd查看时 依然时软连接所在目录
history 查看已经执行过的指令
history n 显示最近执行过的n个指令
history后输入 !n 将历史编号为n的指令执行一遍
例: history 3 显示最近执行过的3个指令

搜索查找类

find [搜索范围(路径)] [选项]
-name 按照指定文件名查找
find /home/ -name hello.txt(/home/下查找名为hello.txt的文件)(文件名改为*为查找全部)
-user 按拥有着查询
find /etc/ -user perwrj(拥有者用户名) (查找/etc/下拥有者为perwrj的文件)
-size 按照大小查找
find /home/ -size +20M (查找/home/下大于20m的文件 +n大于 -n小于 n等于)
locate 搜索的文件
locate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。
locate 的速度比 find 快,它并不是真的查找,而是查数据库,一般文件数据库在 /var/lib/slocate/slocate.db 中,所以 locate 的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为:updatedb
先执行updatedb 创建locate数据库(默认情况下 updatedb 每天执行一次。)
locate passwd(查找 passwd 文件)
locate /etc/sh(搜索 etc 目录下所有以 sh 开头的文件)
locate -i ~/r(忽略大小写搜索当前用户目录下所有以 r 开头的文件)
管道符 "|" (表示将前一个命令的处理结果输出传递给后面的命令处理)
grep 过滤查找(查找文件里符合条件的字符串)
grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。
grep test *file (在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行。)
grep -r update /etc/acpi (查找指定目录/etc/acpi 及其子目录(如果存在子目录的话)下所有文件中包含字符串"update"的文件,并打印出该字符串所在行的内容)
grep -v test test(反向查找。前面各个例子是查找并打印出符合条件的行,通过"-v"参数可以打印出不符合条件行的内容。查找文件名中包含 test 的文件中不包含test 的行)
-a 或 --text : 不要忽略二进制的数据。
-A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。
-b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字符的编号。
-B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。
-c 或 --count : 计算符合样式的列数。
-C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。
-d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
-e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。
-E 或 --extended-regexp : 将样式为延伸的正则表达式来使用。
-f<规则文件> 或 --file=<规则文件> : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
-F 或 --fixed-regexp : 将样式视为固定字符串的列表。
-G 或 --basic-regexp : 将样式视为普通的表示法来使用。
-h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。
-H 或 --with-filename : 在显示符合样式的那一行之前,表示该行所属的文件名称。
-i 或 --ignore-case : 忽略字符大小写的差别。
-l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。
-L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。
-n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。
-o 或 --only-matching : 只显示匹配PATTERN 部分。
-q 或 --quiet或--silent : 不显示任何信息。
-r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
-s 或 --no-messages : 不显示错误信息。
-v 或 --invert-match : 显示不包含匹配文本的所有行。
-V 或 --version : 显示版本信息。
-w 或 --word-regexp : 只显示全字符合的列。
-x --line-regexp : 只显示全列符合的列。
-y : 此参数的效果和指定"-i"参数相同。

解压压缩类

gzip 文件名 (压缩文件,只能将文件压缩为*.gz的文件)(压缩后不会保留源文件)
gunzip 文件.gz (解压缩文件命令)
zip [选项] xxx.zip 将要压缩的文件或目录 (压缩文件和目录的命令)
-r 递归压缩,即压缩目录
unzip [选项] xxx.zip (解压缩文件)
-d 要解压到的目录 (指定压缩后文件存放目录)
tar指令 打包指令 (最后打包出来的文件是.tar.gz的文件)
tar [选项] xxx.tar.gz 打包的内容 (打包目录,压缩后的文件格式为.tar.gz)
要打包压缩多个问文件 文件之间用空格隔开

-C 指定解压目录 (tar -zxvf 要解压的文件 -C 要解压到的目录)(要解压到的目录必须是存在的)
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解压.tar文件

时间日期类

date 显示当前时间
date +%Y 显示当前年份
date +%m 显示当前月份
date +%d 显示当前是那一天
date "+%Y-%m-%d %H:%M:%S" 显示年月日时分秒
date -s "时间"(如"2020-11-11 11:22:11") 设置当前时间
cal 显示本月日历
cal 年份 显示某年份一整年的日历

组和权限管理


在Linux中每个用户必须属于一个组,不能独立于组外。在Linux中每个文件有所有者、所在组、其他组的概念。
查看文件所有者
ls -ahl
修改文件所有者
chown 用户名 文件名
组的创建
groupadd 组名
创建用户并放入一个组
useradd -g 组名 用户名
用户创建文件文件目录类指令.note后 文件所在组为用户所在组
修改文件所在组
chgrp 组名 文件名
其他组
除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组
改变用户所在组
usermod -g 组名 用户名
usermod -d 目录名 用户名 (改变这个用户登录的初始目录)
查看用户信息
id 用户名
权限
-rw-r--r--. 1 root root 6 3月 18 19:24 ok.txt
-rw-r--r--.
文件的类型(第1个):

  • 普通文件
    d 目录
    l 软链接
    c 字符设备(鼠标、键盘等)
    b 块文件,硬盘
    文件所有者拥有的权限(第234个):
    文件所在组的用户拥有的权限(第567个)
    文件其他组用户拥有的权限(第8910个)
    作用到文件
  • 无权限
    r 读取,查看
    w 写,可以修改 不一定能删除(删除必须对文件所在目录有写的权限)
    x 执行
    作用到目录
  • 无权限
    r 可读取,ls查看目录内容
    w 可写,可修改,目录内创建+删除+重命名目录
    x 可执行,可进入该目录
    权限可以用数字表示(r = 4,w = 2, x = 1,因此rwx = 4 + 2 + 1 = 7)
    1
    (如果是文件,表示硬链接数,如果是目录,则表示此目录的子目录个数)
    第一个root
    文件所有者
    第二个root
    文件所在组
    6
    文件的大小为6字节(如果是目录显示4096)
    3月 18 19:24
    文件最后的修改时间
    ok.txt
    文件名
    权限的管理
    通过chmod指令,可以修改文件或目录的权限
    第一种方式:+、-、=变更权限
    u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
    chmod u=rwx,g=rx,o=x 文件名
    chmod 0+w 文件名
    chmod a-x 文件名
    第二种方式:通过数字变更权限
    r=4 w=2 x=1 rwx =4+2+1=7
    chmod u=rwx,g=rx,o=x 文件名 相当于 chmod 751 文件名
    修改文件所有者
    chmod 新所有者 文件名
    chmod 新所有者:新所在组 文件名
    -R 如果是目录,则使其下所有子文件和目录递归生效(所有 直接和间接)
    修改文件所在组
    chgrp 新所在组 文件名
    -R 如果是目录,则使其下所有子文件和目录递归生效(所有 直接和间接)

任务调度

crond 任务调度
crontab 进行 定时任务的设置
概述
任务调度:是指系统在某时间执行特定的命令或程序
任务调度分类:
1、系统工作:有些特定的工作需要周而复始的执行。如病毒扫描等
2、个别用户工作:个别用户可能希望执行某些程序,比如对mysql的数据库备份。
基本语法
crontab [选项]
常用选项:
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务
快速入门:
设置任务调度文件:/etc/crontab
设置个人任务调度。执行crontab -e命令。
-r 终止任务调度
-l 列出当前有哪些任务调度
service crond restart [重启任务调度]
接着输入任务到调度文件。
/1ls -l /etc/>/tmp/to.txt
意思是每小时的每分钟执行ls -l /etc/>/tmp/to.txt命令
占位符说明:
第一个
:一小时中的第几分钟 范围:0~59
第二个
: 一天中的第几小时 0~23
第三个
: 一月中的第几天 1~31
第四个: 一年中的第几月 1~12
第五个
: 一周中的星期几 0~7(0和7都代表周日)
1、如果只是简单的任务,可以不写脚本,直接在crontab中加入任务即可。
2、对于比较复杂的任务,需要写脚本(shell编程)
特殊符号说明:
*代表所有时间
,代表不连续时间。比如”0 8,12,16 ***“命令代表每天八点零分,十二点零分,十六点零分都执行一次
-代表连续时间。”0 5 * * 1-6“代表周一到周六五点执行
/n代表每隔多久执行。比如”/10 ****“代表每隔10分钟一次