• RHCSA2


    二.Linux基础

    8.命令格式

    8.1 命令格式:

    主命令 选项 参数(操作对象)

    8.2 命令分类

    • 内置命令:shell程序自带的命令
    • 外部命令:有独立的可执行程序文件,文件名即命令名

    8.3 选项

    • 概念:指定命令的运行特性,指明要运行命令中的哪一个代码功能

    • 短选项:例如-l , -d 如果同意命令同时使用多个短选项,可数多合并,

    • 长选项:例如–help

    8.4 参数

    • 概念:命令的作用对象,即命令对什么生效
    • 有些选项可以带参数,有些选项可以不带参数
    • 有些命令可同时带多个参数,多个参数之间以空白字符分隔

    8.5 查看命令帮助

    8.5.1 查看bash内部命令帮助

    [root@192 ~]# help cd
    
    • 1

    8.5.2 命令–help

    • [] :表示的是可选
    • …: 表示的可以存在多个参数
    • |表示是可选的
    • <>:必填
    • {}:表示作为一个整体存在的
    [root@192 ~]#cat --help
    cat [OPTION]... [FILE]... 表明cat后面可以加上多个可选的选项以及多个可选的文件参数
    
    • 1
    • 2

    8.5.3 所有用户可用man查看说明文档

    [root@192 ~]# man help
    
    • 1

    8.5.4 使用说明文档的按键

    按键作用
    空格键,PaGe down先上一页
    b,PaGeUP先下一页
    home转到首页
    end转到首尾
    /从上至下搜索关键字如“/cat”
    ?从下至上搜索关键字如“?cat”
    n定位到下一个搜索到的关键字
    N定位到上一个搜索到的关键字
    q退出帮助文档

    8.5.5 帮助文档的信息如下

    结构名称代表意义
    NAME命令的名称
    SYNOPSIS参数的大致使用方法
    DESCRIPTION介绍说明
    EXAMPLES演示(附带简单说明)
    OVERVIEW概述
    ENVIRONMENT环境变量
    FILES用到的文件
    SEE ALSO相关的资料
    HISTORY维护历史与联系方式

    8.5.6 info page

    info与man的用途其实差不多,都是用来查询命令的用法或者是文件的格式。但是与man page不同的 是,info page则是将文件数据拆成一个一个的段落,每个段落用自己的页面来撰写, 并且在各个页面中 还有类似网页的『超链接』来跳到各不同的页面中,每个独立的页面也被称为一个节点(node)。

    不过你要查询的目标数据的说明文件必须要以info的格式来写成才能够使用info的特殊功能(例如超链 接)。 而这个支持info命令的文件默认是放置在/usr/share/info/这个目录当中的。

    [root@192 ~]# info info
    
    • 1
    快捷键作用
    上箭头向上移动一行
    下箭头向下移动一行
    PgUp向上翻一页
    PgDn向下翻一页
    Tab在有*符号的节点进行切换
    回车进入有*符号的子页面,查看详细帮助信息
    u进入上一层信息
    n进入下一小节信息
    p回到上一小节信息
    s或/在info page中使用关键字搜索
    ?查看帮助信息
    q退出

    9.date命令

    9.1 date命令语法格式

    data命令用于显示或设置系统的时间与日期,语法格式为:date[OPTION]…[+FORMAT]

    用户只需要在date命令后输入以+开头的参数,就可以按照指定的格式输出系统时间或日期。

    9.2 date命令中的参数

    参数作用
    %Y完整年份(2022)
    %m月份(1-12)
    %d本月中的第几天
    %H小时(00–23)
    %M分钟(00–59)
    %j今年中的第几天(从01-01开始计算)

    9.3 date的使用

    [root@192 ~]# date
    Sun Jul 31 04:40:49 CST 2022
    
    • 1
    • 2

    9.4 今年的第几天

    [root@192 ~]# date "+%j"
    212
    
    • 1
    • 2

    9.5 按照年月日时分秒显示

    • 第一种
    [root@192 ~]# date "+%Y-%m-%d %H:%m:%S"
    2022-07-31 04:07:50
    
    • 1
    • 2
    • 第二种
    [root@192 ~]# date +'%F %T'
    2022-07-31 04:45:48
    
    • 1
    • 2

    9.6 date修改格式 月日时分年【.秒】 秒可选

    [root@192 ~]# date 073104502022
    Sun Jul 31 04:50:00 CST 2022
    
    • 1
    • 2

    9.7 date修改格式 年月日时分秒

    root@192 ~]# date -s "20220731 4:52:50"
    Sun Jul 31 04:52:50 CST 2022
    
    • 1
    • 2

    10. timedatectl命令

    10.1 语法格式

    timedatectl命令用于设置系统的时间,英文全称为:“time date control",语法格式为:timedatectl[OPTIONS…] COMMAND …

    10.2 参数列表

    参数作用
    statuc显示状态信息
    list-timezones列出已知时区
    set-timezone设置生效时区
    set-time设置系统时间

    10.3 查看系统时间与时区

    [root@192 ~]# timedatectl status
                   Local time: Sun 2022-07-31 04:58:58 CST
               Universal time: Sat 2022-07-30 20:58:58 UTC
                     RTC time: Sat 2022-07-30 20:59:08
                    Time zone: Asia/Shanghai (CST, +0800)
    System clock synchronized: no
                  NTP service: inactive
              RTC in local TZ: no
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    10.4 手动修改时区 为上海

    [root@192 ~]# timedatectl set-timezone Asia/Shanghai
    
    • 1

    10.5 修改系统日期

    [root@192 ~]# timedatectl set-time 2022-07-31
    
    
    • 1
    • 2

    10.6 修改系统时间

    [root@192 ~]# timedatectl set-time 5:03
    
    • 1

    11. 查看目录下的文件

    11.1 参数列表

    选项功能
    -l以长格式显示文件和目录的详细信息,ls命令默认只显示名称的短格式
    -d显示指定目录本身的信息,而不显示目录下的各个文件和子目录的信息
    -c按文件的修改时间排序显示
    -h显示出目录和文件的大小,默认单位是字节,与-l选项 配合使用
    -R以递归的方式显示指定目录及其子目录中的所有内容
    -a显示所有文件,包括名称以”.“开头的隐藏目录和隐藏文件
    -A与-a相同,区别是不显示".“和表示父目录的”…"
    -i显示文件索引点号。一个索引节点代表一个文件,每个文件都有一个编号,称为索引点号inode
    -s按照文件大小排序

    12. Linux文件类型和根目录结构

    在这里插入图片描述

    12.1 Linux文件类型

    使用ls-l 查看第一个字符文件类型说明
    -普通文件类似于windows的记事本
    d目录文件类似于windows文件夹
    c字符设备文件串行端口设备,顺序读写,键盘
    b块设备文件可供存储的接口设备,随机读写,硬盘
    p管道文件用于进程间的通信
    s套接字文件网络通信,监听客户端,客户端通过套接字数据通信
    l软连接或符号链接
    硬链接

    12.2 文件类型案例

    [root@192 ~]# ll /usr/bin/ls
    -rwxr-xr-x. 1 root root 143224 Jul 10  2021 /usr/bin/ls
    
    [root@192 ~]# ll -d /home
    drwxr-xr-x. 3 root root 4096 Jul 27 11:43 /home
    
    [root@192 ~]# ll /dev/tty
    crw-rw-rw-. 1 root tty 5, 0 Jul 27 11:46 /dev/tty
    
    [root@192 ~]# ll /dev/sr0
    brw-rw----+ 1 root cdrom 11, 0 Jul 27 11:46 /dev/sr0
    
    [root@192 ~]# ll /dev/nvme0n1
    brw-rw----. 1 root disk 259, 0 Jul 27 11:46 /dev/nvme0n1
    
    [root@192 ~]# ll //usr/bin/yum
    lrwxrwxrwx. 1 root root 5 Sep 13  2021 //usr/bin/yum -> dnf-3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    12.3 文件类型介绍

    文件名描述
    /根目录,其他所有目录都是其子目录
    /boot存放系统启动时所需要的文件,这些文件若损害,会导致系统无法启动
    /root超级用户的个人目录,普通用户没有权限访问
    /home存放一般用户的个人目录
    /binBinary的缩写,存放普通用户可执行的程序或命令
    /sbin和/bin类似,只用root用户可以使用
    /lib是库(library) 英文缩写,存放系统的各种库文件
    /lib64存放系统本身需要用到64为程序的共享函数库
    /usr一般用户程序安装所在的目录,用于安装各种 应用程序
    /opt该目录通常给第三方应用程序使用
    /etc存放系统管理是所需要的各种配置文件和子目录
    /var通常各种系统日志文件放在这里
    /run保存自系统启动以来描述系统的文件
    /devdev是设备(device)的英文缩写,包含所有的设备文件
    /mnt和/media可以临时将别的文件系统挂载这个目录下,为其他的文件系统提供安装点
    /tmp存放临时文件,三十天回收
    /srvsrv是服务(server)的缩写,服务启动之后所需要访问的数据目录
    /sys将内核的一些信息映射文件,以供应用程序所用
    /proc可以在这个目录下获取系统信息,这些信息是在内存中由系统自己产生的

    13. 从命令行管理文件

    13.1文件命名规则

    • 不能使用/根目录 来当文件名
    • 文件名不能超过255字符
    • 区分大小写
    • 目录也是文件,同一路径不能存在相同名字

    13.2 创建目录

    语法为:mkdir [-p] 【/路径/】目录名

    • -p 可以快速创建目录结果中指定的每个目录,对于存在的目录不会覆盖
    • -v 显示创建目录的过程

    13.3.统计目录及文件的空间占用情况

    du语法格式为:【选项】【目录名】

    选项功能
    -a统计磁盘占用时包括所有的文件,而不仅仅统计目录
    -s只统计每个文件所占用空间总的大小,而不是统计每个子目录,文件的大小
    -h以K.M.G为单位显示磁盘使用情况,以提高信息的可读性

    13.4 删除目录文件

    语法格式:rm -r [-f] 目录文件名

    -r 递归删除 目录及其所有文件

    -f 不需要确认 强制执行yes

    13.5 创建普通文件,三个时间的含义

    语法格式:touch [OPTION]… FILE…

    1.如果文件已经存在,更新文件的三个时间,stat可以查看文件的详细信息

    [root@192 ~]# stat /etc/hostname
      File: /etc/hostname
      Size: 22        	Blocks: 8          IO Block: 4096   regular file
    Device: 10301h/66305d	Inode: 949361      Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Context: system_u:object_r:hostname_etc_t:s0
    Access: 2022-07-30 19:43:02.634011009 +0800  
    Modify: 2022-07-27 11:48:00.513470620 +0800
    Change: 2022-07-27 11:48:00.513470620 +0800
     Birth: 2022-07-27 11:43:26.718122830 +0800
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    **atime,**即access time 查看一下文件内容(cat),文件的atime时间会更新
    mtime,即modify time 是在写入文件时随文件内容的更改而更改,是指文件内容最后一次被修改的时间。
    **ctime,**即change time 元素据【文件的属性,大小,文件名等】被改变,是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改,即文件状态最后一次被改变的时间。

    [root@192 ~]# touch /etc/hostname
    [root@192 ~]# date
    Sun Jul 31 07:54:00 CST 2022
    [root@192 ~]# stat /etc/hostname
      File: /etc/hostname
      Size: 22        	Blocks: 8          IO Block: 4096   regular file
    Device: 10301h/66305d	Inode: 949361      Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Context: system_u:object_r:hostname_etc_t:s0
    Access: 2022-07-31 07:53:56.264077320 +0800
    Modify: 2022-07-31 07:53:56.264077320 +0800
    Change: 2022-07-31 07:53:56.264077320 +0800
     Birth: 2022-07-27 11:43:26.718122830 +0800
    [root@192 ~]# hostnamectl set-hostname server
    [root@192 ~]# cat /etc/hostname
    server
    [root@192 ~]# stat /etc/hostname
      File: /etc/hostname
      Size: 7         	Blocks: 8          IO Block: 4096   regular file
    Device: 10301h/66305d	Inode: 917509      Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Context: system_u:object_r:hostname_etc_t:s0
    Access: 2022-07-31 07:54:24.634077800 +0800
    Modify: 2022-07-31 07:54:19.207077708 +0800
    Change: 2022-07-31 07:54:19.207077708 +0800
     Birth: 2022-07-31 07:54:19.207077708 +0800
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    13.6.如果文件不存在,则创建该文件

    创建多个普通文件:

    方法1:touch 文件名1 文件名2 文件名3

    方法2: touch {文件名1,文件名2,文件名3}

    方法3: touch abc{1,2,3}

    13.7 删除普通文件

    格式:rm [-f] 文件名

    14. 数据流和重定向

    14.1 数据流 代码很重要

    • 标准输入:代码为0
    • 标准输出:代码为1
    • 标准错误输出:代码2

    14.2 重定向操作符

    • 输出重定向操作符:> ,>>
    • 输入重定向操作符:<,<<
    使用形式功能
    命令 1 >文件or命令 >文件标准输出不显示在屏幕,以覆盖的方式写入到指定的文件中,文件不存在就创建
    命令 2>文件命令执行错误不显示在屏幕,以覆盖的方式写入到指定文件,文件不存在就创建
    命令 2 >/dev/null命令执行错误不显示在屏幕,写入到空设备文件中,一段时间就会将错误信息丢掉
    命令 & >文件 or命令 >&文件命令执行正确和不正确都不显示在屏幕,以覆盖的方式写入到指定的文件中,文件不存在就创建
    命令 >> 文件将命令执行正确以追加方式写入指定文件,不覆盖原文件内容,文件不存在就创建
    命令 < 文件使用命令从指定的文件中读取数据作为输入
    命令 << 文件在命令行读取数据作为 输入,知道遇到指定的结束标识符

    14.3 输出重定向案例

    • 标准输出重定向:1> or >, 1>> 或 >>
    • 标准错误输出重定向:2 >, 2 >>

    14.3.1 案例1:输出重定向(覆盖)1和> 之间没有空格

    [root@localhost ~]# date 1> date.txt
    
    
    • 1
    • 2

    14.3.2 案例2:输出重定向(追加)

    [root@localhost ~]# date >>date.txt
    
    • 1

    14.3.3 案例3:错误输出重定向

    [root@localhost ~]# ls /home/  /aaaaaaaa >list.txt
    ls: 无法访问/aaaaaaaaa: 没有那个文件或目录
    
    
    • 1
    • 2
    • 3

    14.3.4 案例4 :正确和错误输入到不同位置

    //正确结果重定向到list.txt
    //将错误结果重定向到error.txt中
    [root@localhost ~]# ls /home/ /aaaaaa/>list.txt 2>error.txt
    
    [root@localhost ~]# cat error.txt
    ls: cannot access '/aaaaaa/': No such file or directory
    
    [root@localhost ~]# cat list.txt 
    /home/:
    wc
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    14.3.5 案例5:正确和错误都输入到相同位置

    [root@localhost ~]# ls /home/ /aaaaaaa &>list.txt
    
    查看 
    [root@localhost ~]# cat list.txt
    ls: cannot access '/aaaaaaa': No such file or directory
    /home/:
    wc
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    14.3.6 案例6:正确和错误都输入到相同位置

    [root@localhost ~]# ls /home/ /aaaaaaa >list.txt 2>&1
    
    [root@localhost ~]# cat list.txt 
    ls: cannot access '/aaaaaaa': No such file or directory
    /home/:
    wc
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    14.3.7 重定向到空设备 /dev/null 将产生的错误丢到null中

    //将产生的错误 丢到null中
    [root@localhost ~]# ls /home/ /aaaaaaaa &>list.txt 2>/dev/null
    [root@localhost ~]# cat list.txt 
    /home/:
    wc
    //将产生的错误 丢到null中
    [root@localhost ~]# ls /home/ /aaaaaaaa &>/dev/null
    [root@localhost ~]# cat list.txt 
    /home/:
    wc
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    14.4 输入重定向的案例

    标准的输入重定向:< 或0< 0<<或<<

    14.4.1案例1:从文件读取作为cat命令的输入

    [root@localhost ~]# echo test > file
    [root@localhost ~]# cat < file
    test
    
    • 1
    • 2
    • 3

    14.4.1案例2:标准输入重定向 << 并不是代表追加,指定结束符

    [root@localhost ~]# cat > file3 < aa bb cc
    > end
    [root@localhost ~]# cat file3
    aa bb cc
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    14.5 拓展案例

    14.5.1案例1:mysql表结构导入

    [root@localhost ~]# mysql -uroot -p123456 < bbs.sql
    
    • 1

    14.5.2案例2:使用输入重定向写邮件(不懂)

    [root@localhost ~]# mail -s "ssss" alice #没有改变输入的方向,
    默认键盘
    111
    222
    333
    ^D
    [root@localhost ~]# su - alice
    [alice@localhost ~]$ mail
    Mail version 8.1 6/6/93. Type ? for help.
    "/var/spool/mail/alice": 1 message 1 new
    \>N 1 root@localhost.local Mon Oct 29 14:09 18/657 "ssss"
    &
    [root@localhost ~]# mail -s "test01" alice < /etc/hosts #输入重定向,来自于文件
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    14.5.3案例3:(不懂)

    [root@localhost ~]# dd if=/dev/zero of=/file1.txt bs=1M count=2
    [root@localhost ~]# dd /file2.txt bs=1M count=2
    
    • 1
    • 2

    14.5.4案例4:at(不懂)

    [root@localhost ~]# at now +5 min
    at> useradd yang99
    at> 
    job 1 at 2015-06-09 11:57
    [root@localhost ~]# vim at.txt
    useradd yang100
    useradd yang102
    [root@localhost ~]# at now +2 min < at.txt
    job 2 at 2015-06-09 11:55
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    14.6 拓展:使用文件描述符重定向的复杂用法

    使用文件描述符的重定向都使用了&符号:

    使用意义
    cmd >&n把输出文件送到描述符n
    cmd m>&n把输出到文件符m的信息重定向到文件描述符n
    cmd >&-关闭标准输出
    cmd <&n输入来自文件描述符n
    cmd m<&nm来自文件描述符n
    cmd <&-关闭标准输入
    cmd <&n-移动输入文件描述符n而非复制它
    cmd >&n-移动输出文件描述符 n而非复制它

    14.6.1 示例 2>&1: 将stderr 重定向到标准输出

    [root@localhost ~]# 2>&1
    [root@localhost ~]# cat 1
    ls: cannot access '/aaaaaaa': No such file or directory
    
    • 1
    • 2
    • 3

    14.7 将标准输出重定向到文件

    14.7.1 echo命令

    • echo命令常用于在终端设备上输出字符串或变量提取后的值
    • 语法格式:echo [字符串] [$变量]
    • 执行 echo 字符串 或者 echo $变量 $是取变量实际值

    14.7.2 把指定字符串“bingbing”输出到终端屏幕上的命令

    [root@localhost ~]# echo bingbing
    bingbing
    
    • 1
    • 2

    14.7.3 提取变量SHELL的值,输出到屏幕上

    [root@localhost ~]# echo $SHELL
    /bin/bash
    
    
    • 1
    • 2
    • 3

    14.7.4 bash shell提示符

    [root@localhost ~]# echo $PS1
    [\u@\h \W]\$
    
    • 1
    • 2

    14.7.5 PS1常用参数含义

    参数含义
    \d代表日期,格式为 Mon Aug 1
    \H完整的主机名称
    \h仅取主机的第一个名字
    \t显示时间为24小时格式 HH:MM:SS
    \T显示时间为12小时格式
    \A显示时间为24小时格式: HH:MM
    \u当前用户的账号名称
    \vBASH的版本信息
    \w完整的工作目录
    \W利用basename取得工作目录名称,所以指挥列出最后一个目录
    \#下达的第几个命令
    \$提示字符,如果是root就 # 如果是普通用户就$

    14.7.6 PS1修改主机名案例

    root@localhost ~]# PS1="[\u@ \t \w]"
    [root@ 11:13:45 ~]
    
    
    • 1
    • 2
    • 3

    14.7.7 将标准输出重定向到文件

    [root@ 11:13:45 ~]echo test > /root/test/file
    -bash: /root/test/file: No such file or directory
    [root@ 11:15:54 ~]echo test2 >> /root/test/file
    -bash: /root/test/file: No such file or directory
    
    • 1
    • 2
    • 3
    • 4

    14.8 tee命令读取数据输出到文件

    14.8.1管道符

    用于两个命令或多个命令相连接,将管道符左边命令的输出作为管道符右边命令的输入

    14.8.2 tee文件

    读取标准输入的数据,将其内容输出到文件的同时输出到屏幕(把输出保存到文件中,又想在屏幕上看到内容)

    tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时输出到文件

    14.8.3 tee文件语法

    tee   [-ai][--help][--version][文件...]
    
    • 1
    参数作用
    -a 或者-append附加到现有文件的后面,而非覆盖他
    -ih或者–ignore-interrupts忽略中断信号
    –help在线帮助

    14.8.4 tee的使用

    [root@master test]#tee file
    [root@ 11:53:08 ~]cat /etc/group | tee /root/file
    
    • 1
    • 2

    14.8.5 如何确保tee命令追加信息文件中

    [root@ 12:01:22 ~]tee -a file
    ddd
    ddd
    
    • 1
    • 2
    • 3

    14.8.6 tee写入多个文件

    [root@ 12:01:34 ~]tee -a file1 file2 file3
    
    • 1

    15.作业1

    1、#创建目录
    在/mnt下创建boot和sysroot目 t#cd /mnt在/mnt/boot下创建grub目录
    在/mnt/sysroot下创建proc,sys,bin,sbin,lib,usr,var,etc,dev,home,root,tmp
    在/mnt/sysroot/usr下创建bin,sbin,lib
    在/mnt/sysroot/lib下创建modules在/mnt/sysroot/var下创建run,log,lock在/mnt/sysroot/etc下创建init.d

    mkdir -p /mnt/{boot/grub,sysroot/{proc,sys,bin,sbin,lib/moudules,usr/{bin,sbin,lib},var/{run,log,lock},etc/init.d,home,root,tmp}}
    [root@ 12:26:49 /tmp]tree
    
    用tree查看
    
    • 1
    • 2
    • 3
    • 4

    2.如何一次性在/test目录创建以abc表示的100个文件,例如abc1,abc2,abc3,.abc100

    [root@ 12:28:38 /tmp]rm -rf abc{1,2,3} /test
    
    • 1

    16. 作业2

    1.手动调整当前主机时间(时区和时间更改)

    [root@192 ~]# timedatectl set-timezone Asia/Shanghai 
    
    [root@192 ~]# timedatectl set-time 2022-07-31
    
    [root@192 ~]# timedatectl set-time 8:18:50
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.查看系统时间按照年月日 时分秒 格式显示并将结果写入time文件

    [root@192 ~]# date +'%F %T' > /time
    [root@192 ~]# cat /time
    2022-07-31 08:23:03
    
    
    • 1
    • 2
    • 3
    • 4

    3.查看主机/etc/下是否存在group文件,是什么类型文件

    [root@192 ~]# ll /etc/group
    -rw-r--r--. 1 root root 978 Jul 27 11:43 /etc/group
    
    • 1
    • 2

    4.查看/etc/sysconfig目录文件的属性

    [root@192 ~]# ll -d /etc/sysconfig
    drwxr-xr-x. 5 root root 4096 Jul 27 11:43 /etc/sysconfig
    
    • 1
    • 2

    5.在root用户的家目录下创建file文件,在/pub创建该文件的软连接文件newfile,在/test创建硬链接文件file.lnk

    [root@192 ~]# ln -s /root/file /pub/newfile
    [root@192 ~]# mkdir /test
    [root@192 ~]# ln /root/file   /test/file.lnk
    
    • 1
    • 2
    • 3

    6.在文件中编写一下内容:

    Good good study,day day up …

    //第一种
    [root@192 ~]# vim aaa.txt
    [root@192 ~]# cat aaa.txt
    Good good study,day day up.....
    //第二种
    [root@192 ~]# echo "Good good study,day day up....." >> aaa.txt
    [root@192 ~]# cat aaa.txt
    
    //第三种
    [root@192 ~]# tee << end >> aaa.txt
    > Good good study,day day up....
    > end
    
    //第四种
    [root@192 ~]# cat aaa.txt
    Good good study,day day up.....
    Good good study,day day up.....
    Good good study,day day up....
    
    //第五种
    [root@192 ~]# cat << EOF >> aaa.txt
    >Good good study,day day up.....
    >Good good study,day day up....
    >EOF
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    ll /etc/group
    -rw-r–r–. 1 root root 978 Jul 27 11:43 /etc/group

    
    4.查看/etc/sysconfig目录文件的属性
    
    
    • 1
    • 2
    • 3

    [root@192 ~]# ll -d /etc/sysconfig
    drwxr-xr-x. 5 root root 4096 Jul 27 11:43 /etc/sysconfig

    
    5.在root用户的家目录下创建file文件,在/pub创建该文件的软连接文件newfile,在/test创建硬链接文件file.lnk
    
    ```vbscript
    [root@192 ~]# ln -s /root/file /pub/newfile
    [root@192 ~]# mkdir /test
    [root@192 ~]# ln /root/file   /test/file.lnk
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    6.在文件中编写一下内容:

    Good good study,day day up …

    //第一种
    [root@192 ~]# vim aaa.txt
    [root@192 ~]# cat aaa.txt
    Good good study,day day up.....
    //第二种
    [root@192 ~]# echo "Good good study,day day up....." >> aaa.txt
    [root@192 ~]# cat aaa.txt
    
    //第三种
    [root@192 ~]# tee << end >> aaa.txt
    > Good good study,day day up....
    > end
    
    //第四种
    [root@192 ~]# cat aaa.txt
    Good good study,day day up.....
    Good good study,day day up.....
    Good good study,day day up....
    
    //第五种
    [root@192 ~]# cat << EOF >> aaa.txt
    >Good good study,day day up.....
    >Good good study,day day up....
    >EOF
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
  • 相关阅读:
    【String 类 常用方法详解和归类】全网最细总结
    Java 18中简单 Web 服务器
    力扣练习——31 有效的井字游戏
    Openfoam Pstream类探索
    事件循环面试题如何去回答?
    CentOS Stream9更改ip地址,网关(设置静态ip)
    152-技巧-Power Query 快速合并文件夹中表格之自定义函数 TableXlsxCsv
    如何优化百度搜索引擎?(10个技巧让你的网站更容易被搜索到)
    C# 中的Async 和 Await 的用法详解
    文件夹重命名:解决文件夹名称难题,批量将中文翻译成英文
  • 原文地址:https://blog.csdn.net/Da_Bao_zi/article/details/126099061