DAY4:CentOS6.8及7的文件系统2

7月27号,马哥学习第四天,继续学习了linux的文件系统。

  • centos7的目录结构如下图所示

wKiom1eaEGzymuVWAAEjtQ8sOp8925.jpg-wh_50


  • 文件命名除了斜杠和空格,所有字符都有效,但特殊字符不推荐使用

  • linux的文件类型

    -:普通文件

    d: 目录文件

    b: 块设备

    c: 字符设备

    l: 符号链接文件

    p: 管道文件pipe

    s: 套接字文件socket

wKiom1ebTWHhy_C4AACVrA9FwmU804.jpg

  • stat 查看文件状态(包括元数据)

  • echo $[$RANDOM%80] 随机显示一个80以内的数

  • rm /root/-h -f 用绝对路径的方式删除-h文件

  • echo "- - -" > /sys/class/scsi_host2/scan 发现新添加的硬盘

  • /dev/sdb 块设备

  • 在文件中写入数据:

    dd if=读取路径 of=输出路径 bs=1M count=块数

  • hexdump -C f3.txt 读取二进制代码

    -v 全显示(包括空格的代码)

    -c 转换过后的代码(如换行符显示为\n)

    (windows的回车键比linux多一个控制符od)

  • hexedit f3.txt 编辑二进制代码

    安装hexedit:

    rpm -i /run/media/root/CentOS\ 7\ x86_64/Packages/hexedit-1.2.13-5.el7.x86_64.rpm

  • 相对路径不一定是相对于当前路径

    绝对路径(以/开始) 比如 /etc/sysconfig/network

    相对路径(不以/开始) 比如 sysconfig]# ./network 和sysconfig]# network

    . 表示当前路径 ..表示当前路径的上一级路径

    sysconfig]# ../issue

  • cd 绝对路径或相对路径

    cd - 到以前的工作目录

    cd=cd~ 切到主目录

    cd ..到上一级目录

    cd~wang 切换到wang的工作目录

  • 提高远程连接的速度:

    vim /etc/ssh/sshd_config

    将UseDNS yes改为no

  • 列出当前目录的内容或指定目录 :ls [options] [files_or_dirs]
    ls -a 包含隐藏文件
    ls -l 显示额外的信息
    ls -R 目录递归通过
    ls -ld 目录和符号链接信息
    ls -1 文件分行显示
    ls �S 按从大到小排序
    ls �u 配合-t选项,显示并按atime从新到旧排序
    ls -r 逆序显示

    ls �U 不排序按目录存放顺序显示
    ll f[a-c]* 显示a到c之间的字母开头的文件,顺序为aAbBc

    ll f[[:lower]]* 显示所有小写字母开头的文件

    ll --block-size=MB 功能同 ll -h (文件大小按照MB显示)

  • 文件通配符

    * 匹配零个或多个字符

    ? 匹配任何单个字符
    ~ 当前用户家目录

    ~username 用户家目录

    ~+ 当前工作目录

    ~- 前一个工作目录

    [0-9] 匹配一个数字范围

    [a-z]:大写和小写字母

    [wxc] 匹配列表中的任何的一个字符
    [^wxc] 匹配列表中的所有字符以外的字符
    [:digit:]:任意数字,相当于0-9

    [:lower:]:任意小写字母

    [:upper:]: 任意大写字母

    [:alpha:]: 任意大小写字母

    [:alnum:]:任意数字或字母

    [:space:]:空格

    [:punct:]:标点符号

  • touch可以生成文件,也可以刷新时间

    -c: 如果文件不存在,则不予创建

    -a: 仅改变 atime

    -m: 仅改变 mtime

    -t:STAMP: -a: 仅改变 atime -m: 仅改变 mtime -t:STAMP:

  • 三个时间戳(可用stat查看)

    atime 读取文件时内容(cat)时 atime变化(centos6和7中得满足如下一种条件才改变:1距离上次改变已经一天以上,2atime比mtime早)

    mtime 修改文件内容(数据)时 mtime改变

    ctime 修改文件元数据(文件名等)时 ctime改变

  • 复制文件和目录cp

    cp [OPTION]... [-T] SOURCE DEST

    cp [OPTION]... SOURCE... DIRECTORY

    -r,-R: 递归复制目录及内部的所有内容;

    -a: 归档,相当于-dR --preserv=all

    -p: 等同--preserv=mode,ownership,timestamp

    -v: --verbose

    -f: --force

wKioL1ebVRSiClBCAAM54_esSlI997.jpg

  • 移动和重命名文件

    mv [OPTION]... [-T] SOURCE DEST

    mv [OPTION]... SOURCE... DIRECTORY
    -f 强制

  • 删除

    rm [OPTION]... FILE...

    -f: 强制删除

    -r: 递归

    --no-preserve-root

  • 目录操作

    tree 显示目录树

    -d: 只显示目录

    -L level:指定显示的层级数目

    -P pattern: 只显示由指定pattern匹配到的路径

    mkdir 创建目录

    -p: 存在于不报错,且可自动创建所需的各目录;

    -v: 显示详细信息

    -m MODE: 创建目录时直接指定权限;
    rmdir 删除空目录

练习题

1、只显示指定目录的隐藏目录和文件

ls .[^.]*


2、只显示指定目录下的目录(不显示文件)

ls -d /etc/*/

ls -d ./*/

tree -d


3、显示/var目录下所有以l开头,以一个小写字母结尾,且中 间出现至少一位数字的文件或目录

ls /var/l*[0-9]*[[:lower:]]


4、显示/etc目录下以任意一位数字开头,且以非数字结尾的 文件或目录

ls /etc/[0-9]*[^0-9]

5、显示/etc/目录下以非字母开头,后面跟了一个字母及其 它任意长度任意字符的文件或目录

ls /etc/[^[:alpha:]][[:alpha:]]*


6、显示/etc目录下所有以m开头以非数字结尾的文件或目录
ls -d /etc/m*[^0-9]


7、显示/etc目录下,所有以.d结尾的文件或目录
ls -d /etc/*.d


8、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文 件或目录

ls -d /etc/[mnrp]*.conf


9、使用别名命令,每日将/etc/目录下所有文件, 备份到/testdir/下独立的新目录下,并要求新目录 格式为 backupYYYY-mm-dd ,备份过程可见

alias cp1='cp -rpv /etc/ /testdir/backup`date +%F`'

cp1回车


10、先创建/testdir/rootdir目录,再复制/root所有 下文件到该目录内,并要求保留原有权限

cp -rp /root/ /testdir/rootdir/


11、如何创建/testdir/dir1/x,/testdir/dir1/y,/testdir/dir1/x/a,/testdir/dir1/x/b,/testdir/dir1/y/a,/testdir/dir1/y/b

mkdir /testdir/dir1/{x,y}{/a,/b}


12、如何创建/testdir/dir2/x,/testdir/dir2/y,/testdir/dir2/x/a,/testdir/dir2/x/b

mkdir -pv /testdir/dir2/{x/{a,b},y}


13如何创建/testdir/dir3,/testdir/dir4,/testdir/dir5,/testdir/dir5/dir3,/testdir/dir5/dir4

mkdir -pv /testdir/dir{3,4,5/dir{3,4}}

shipping version 提交版本

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


linux下开机自启: 在/etc/init.d目录下新建文件elasticsearch 并敲入shell脚本: 注意, 前两行必须填写,且要注释掉。 第一行为shell前行代码,目的告诉系统使用shell。 第二行分别代表运行级别、启动优先权、关闭优先权,且后面添加开机服务会用到。 shell脚本
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以需要赋予其可执行权 chmod +x /etc/rc.d/rc.local 2、赋予脚本可执行权限假设/usr/local/script/autostart.sh是你的脚本路径,给予执行权限 chmod +x /usr
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。 通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。 查询当前目录总大小可以使用d
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一但shell关闭网站也就关闭了,所以要配置守护进程, 用的是Supervisor,本文主要记录配置的过程和过程遇到的问题 安装Supervisor 1 yum install python-setuptools
设置时区(CentOS 7) 先执行命令timedatectl status|grep 'Time zone'查看当前时区,如果不是时区(Asia/Shanghai),则需要先设置为中国时区,否则时区不同会存在时差。 #已经是Asia/Shanghai,则无需设置 [root@xia
vim /etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO="static" ONBOOT=yes IPADDR=192.168.8.106 NETMASK=255.255.252.0 GATEWAY=192.168.
一、安装gcc依赖 由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装 [root@localhost local]# yum install -y gcc 二、下载并解压安装包 [root@localhost local
第一步 On CentOS/RHEL 6.*: $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm On CentOS/RHEL 7: $
/// <summary> /// 取小写文件名后缀 /// </summary> /// <param name="name">文件名</param> /// <returns>返回小写后缀,不带“.”</ret
which nohup .bash_profile中并source加载 如果没有就安装吧 yum provides */nohup nohup npm run start & nohup ./kibana &
1.1 MySQL安装 1.1.1 下载wget命令 yum -y install wget 1.1.2 在线下载mysql安装包 wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 1.1.3 安装My
重启 reboot shutdown -r now init 6 关闭 init 0 shutdown -h now shutdown -h 20:25 #8点25关机查看内存 free CPU利用率 top 日期 date 设置时间 date 033017002015 #月日时间年 日历 cal
1、firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status firewalld 开机禁用 : systemctl disable firewalld 开机启用 :
1 下载并安装MySQL官方的 Yum Repository wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 使用上面的命令就直接下载了安装用的Yum Repository,大概
CentOS6.x CentOS6中转用Upstrat代替以前的init.d/rcX.d的线性启动方式。 一、相关命令 通过initctl help可以查看相关命令 [root@localhost ~]# initctl help Job commands: start Start job. sto
1、使用命令:df -lk 找到已满磁盘 2、使用命令:du --max-depth=1 -h 查找大文件,删除
ifconfig:查看网卡信息 网卡配置文件位置: /etc/sysconfig/network-scripts/文件夹 nmtui:配置网卡 netstat -tlunp:查看端口信息 端口信息存储位置: /etc/services文件 route:查看路由信息 wget:下载网路文件,例如 wg
ps -ef:查看所有进程, ps -ef |grap firewalld 查看与firewalld相关的进程 which :查看进程:which firewalld kill 进程id:杀掉进程 kill 640,强制杀:kill -9 640 man:查看帮助,例如 man ps 查看
useradd:添加用户 useradd abc,默认添加一个abc组 vipw:查看系统中用户 groupadd:添加组groupadd ccna vigr:查看系统中的组 gpasswd:将用户abc添加到ccna组 gpasswd -a abc ccna groups abc:查看用户abc属