linux基础第二周

linux发行版系统目录命名规则node

        使用根文件系统结构,使用FHS层次结构。linux系统严格区分大小写,系统目录继承了这一特色。linux

        /:根目录,全部目录的最高一级目录shell

        /bin:全部用户可用的基础命令存放目录vim

        /sbin:仅root用户可用的命令存放目录bash

        /home:普通用户家目录less

        /root:超级用户家目录ide

        /etc:存放配置文件的目录ui

        /usr:存放全局共享数据的目录this

                /usr/local:部分第三方应用程序安装目录idea

        /dev:存放设备文件的目录

                /dev/null:空设备,全部存入的数据都会被丢弃的设备文件

                /dev/zero:零设备,输出指定长度二进制0的设备文件

        /lib:存放库文件和内核模块的目录

        /lib64:存放专用64位库文件的目录

        /var:存放常发生变化的文件以及少部分配置文件的目录

                /var/log:存放系统日志的目录

        /boot:存放系统启动过程所用到的引导文件、内核文件等文件的目录

        /proc:存放内核与进程相关文件的虚拟文件系统

                /proc/cpuinfo:存放cpu信息的文件

        /medir:可移动存储设备的默认挂载点

        /mnt:临时挂载点,重启失效

        /tmp:存放临时目录及文件的目录,重启清空

        /opt:部分第三方应用程序的默认安装目录

 

文件的元数据信息包含

File           文件名称
Size           文件大小
Blocks         占用的磁盘块数
IO Block       IO块大小
regular file   文件的类型
Device         所在设备
Inode          Inode节点号
Links          被连接的次数
Access         文件的访问权限
Uid            属主id和全部人
Gid            属组id和所属组
Access         文件最近一次被访问的时间
Modify         文件的数据内容被修改的时间
Chang          文件的状态改变的时间

 能够经过stat命令查看文件的元数据,例:

[root@zfc ~]# stat anaconda-ks.cfg
  File: ‘anaconda-ks.cfg’
  Size: 1968      	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 4297153635  Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-11-06 18:22:12.433397525 +0800
Modify: 2019-11-06 18:22:12.433397525 +0800
Change: 2019-11-06 18:22:12.822401901 +0800
 Birth: -

能够经过touch命令修改文件的时间戳,例:

[root@zfc ~]# touch anaconda-ks.cfg 
[root@zfc ~]# stat anaconda-ks.cfg 
  File: ‘anaconda-ks.cfg’
  Size: 1968      	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 4297153635  Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-11-09 18:24:00.413843056 +0800
Modify: 2019-11-09 18:24:00.413843056 +0800
Change: 2019-11-09 18:24:00.413843056 +0800
 Birth: -

 

连接

        包含软连接和硬连接,软连接是建立的一个指向数据块的新的inode的文件,与源文件inode不一样,删除源文件软连接即失效。硬连接是建立新的数据块存储相同的内容,可是inode相同,删除源文件硬连接依然有效。

[root@zfc ~]# touch ln          #建立一个源文件
[root@zfc ~]# ln -s ln ln_s     #建立软连接
[root@zfc ~]# ln  ln ln_h       #建立硬连接
[root@zfc ~]# stat ln |grep -i inode     #查看源文件inode
Device: fd00h/64768d	Inode: 4297103463  Links: 2
[root@zfc ~]# stat ln_h |grep -i inode   #查看硬连接inode
Device: fd00h/64768d	Inode: 4297103463  Links: 2
[root@zfc ~]# stat ln_s |grep -i inode   #查看软连接inode
Device: fd00h/64768d	Inode: 4297153591  Links: 1
[root@zfc ~]# rm -f ln          #删除源文件
[root@zfc ~]# ll ln*
-rw-r--r-- 1 root root 18 Nov  9 18:31 ln_h         #能够正常打开
lrwxrwxrwx 1 root root  2 Nov  9 18:30 ln_s -> ln   #连接失效,没法打开

 

文件管理类命令

        ls:查看目录下的文件

                -a:显示全部文件包括隐藏文件
                -A:显示除.和..以外的全部文件
                -l,--long:显示文件的详细属性信息
                -h:对文件大小进行人性化显示
                -d:查看目录自己而非其内部的文件
                -r:逆序显示文件
                -R:递归显示文件

        touch:建立文件,若是文件已存在则刷新时间戳

        mkdir:建立目录

                -p:自动按需建立父目录
                -m:建立目录时给定权限

        cp:复制

                -f:强制覆盖目标文件
                -r,-R:递归复制目录

        mv:剪切文件到指定目录,若是剪切到同一目录下即为更名

                -f:强制覆盖目标文件

        rm:删除文件或目录

                -f:强制覆盖目标文件
                -r,-R:递归处理,将制定目录下的全部文件包括目录一并删除

 

复制/etc/profile到/tmp目录,用查找替换命令删除文件中的行首空白字符

[root@zfc ~]# cp /etc/profile /tmp
[root@zfc ~]# sed -i 's/^[[:space:]]*//g' /tmp/profile
[root@zfc ~]# cat /tmp/profile 
# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.

pathmunge () {
case ":${PATH}:" in
case ":${PATH}:" in
*:"$1":*)
*:"$1":*)
;;
;;
*)
*)
if [ "$2" = "after" ] ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
PATH=$PATH:$1
else
else
PATH=$1:$PATH
PATH=$1:$PATH
fi
fi
esac
esac
}

 

在vim中设置tab缩进为4个字符

:set tabstop=4

相关文章
相关标签/搜索