美文网首页LinuxLinux学习之路我用 Linux
系统目录结构、文件类型、ls、which、alias

系统目录结构、文件类型、ls、which、alias

作者: 强出头 | 来源:发表于2017-12-16 12:14 被阅读0次

    2.1 系统目录结构(上)

    • ls 命令,列出文件夹下的文件及文件夹
    [root@mylinux ~]# ls / (根目录)
    bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
    boot  etc  lib   media  opt  root  sbin  sys  usr
    [root@mylinux ~]# ls /root/ (根目录下面的root用户的家目录)
    anaconda-ks.cfg
    

    这里我们 / 为根目录,/root/ 为根目录下面的root用户的家目录,即我们最初进入系统的目录

    • 这里 /root/.ssh/authorized_keys 存放公钥,然后通过秘钥ssh链接root用户。我们如果登录普通用户则,创建一个普通用户 useradd wsl ,并在 /home/wsl/ 下创建一个 .ssh/authorized_keys 文件,放入公钥就可以秘钥ssh登录我们这个wsl普通用户了
    [root@mylinux ~]# ls /root/.ssh/authorized_keys (存放root用户的公钥来秘钥ssh链接)
    /root/.ssh/authorized_keys
    [root@mylinux ~]# useradd wsl (创建一个普通用户)
    [root@mylinux ~]# ls /home/wsl/ (home下存放普通用户)
    
    如果想要更改默认的  .ssh/authorized_keys,即公钥存放位置
    [root@mylinux ~]# ls /etc/ssh/sshd_config(更改默认ssh配置文件)
    
    • 通过tree命令来树状显示根目录结构
    [root@mylinux ~]# yum install -y tree(安装tree命令)
    [root@mylinux ~]# tree --hep (显示tree常用选项,应用于所有命令)
    [root@mylinux ~]# man   tree  (显示tree帮助文档,应用于所有命令)
    [root@mylinux ~]# tree / -L 2 (最大显示深度为两层)
    
    • 常用的目录及其作用
    /bin/(存放常用的命令,做了一个usr/bin的软连接,所有用户都能用)
    /sbin/ (存放常用的命令,一般root用户使用的命令,普通用户没有权限)
    /usr/bin/ (存放常用的命令)
    /usr/sbin/ (存放常用的命令)
    /boot/ (启动相关的文件,关键文件,其中有如grub)
    /dev/ (Linux中特有的设备文件)
    /etc/ (系统中的一些配置文件所在目录)
    /home/ (用户家目录,[root@mylinux ~]# useradd wsl (所创建的wsl普通用户就存放在 /home/ 里面))
    /lib/ (系统库文件,很多命令都会依赖一些库)
    /lib64/ (系统库文件,很多命令都会依赖一些库)
    例如:
    [root@mylinux ~]# ldd /bin/ls ( ldd 命令展示ls所依赖的库文件)
    

    2.2 系统目录结构(下)

    CentOS7不区分32和64位系统,全部是64。区别在于内存的识别,要识别到8个G以上的内存需要64位才行。

    /media/ (媒介目录默认为空,U盘的插入会自动放入到media目录下面去)
    /mnt/ (临时挂载的目录,默认为空,挂载新的光驱或新增加的硬盘挂载到此目录下)
    /opt/ (早期Oracle会安装在此文件夹下)
    /proc/ (系统启动的一些进程,启动的进程会生成一个数字的PID,其都是一个目录)
    /root/ (root用户的家目录)
    /run/ (进程产生的一些临时文件,一重启或者关机就会消失的一些文件)
    /srv/ (service的缩写,服务产生的一些临时的文件,为空)
    /sys/ (会存一些系统内核相关的一些文件,一般不会动)
    /tmp/ (系统临时目录,权限很大,任何用户都可以在这里面增删改查)
    /usr/ (用户的一些文件会放到这里面,重要目录,类似Apache的一些文件会放到里面)
    /var/ (/var/log会经常用到,这里面会存日志,/var/log/messages存放系统总日志,/var/run/会存放一些进程的PID)
    
    • 常用的重要的目录总结
    /usr/bin/
    /usr/sbin/
    /bin/
    /sbin/ (都做了软连接,类似快捷方式,让我们在任何地方任何时候都能使用命令,没有软链接,就需要到绝对路径下去使用)
    /etc/
    /var/
    /usr/local/
    /root/
    /home/
    /proc/
    

    2.3 ls命令

    • ls命令常用选项
    [root@mylinux ~]# ls -l (ls -l 的用法)
    总用量 4
    -rw-------. 1 root root 1418 12月 12 23:42 anaconda-ks.cfg
    -rw-------. (权限)
    1 (表示有几个文件引用了iknowd号,iknowd存放的就是文件的详细信息,
    就是 ls -l 查出来的信息,记录引用所以iknowd会记录它在磁盘的位置,即iknowd号是唯一的,这个数字为硬链接)
    root (所有者)
    root (所属组)
    1418 (文件大小,单位b)
    12月 12 23:42 (文件创建或最近更改的时间)
    
    
    [root@mylinux ~]# ls -i anaconda-ks.cfg (查看此文件的iknowd)
    33574978 anaconda-ks.cfg
    33574978 (这就是iknowd号,表示此文件)
    
    
    [root@mylinux ~]# ls -lh(ls -lh 的用法,更人性化)
    总用量 4.0K
    -rw-------. 1 root root 1.4K 12月 12 23:42 anaconda-ks.cfg
    
    
    
    
    [root@mylinux ~]# ls -la(查看该目录下的隐藏文件)
    总用量 32
    dr-xr-x---.  3 root root  147 12月 13 23:42 . (. 在所有查看文件夹下的隐藏文件都有,表示当前的目录即目录本身,
    即是/root。这里我们看到硬链接有3个,我们在下面查看有哪三个。其实可以看做该目录下的子目录的个数)
    dr-xr-xr-x. 17 root root  224 12月 14 10:56 .. (.表示当前目录,..表示上一级目录)
    -rw-------.  1 root root 1418 12月 12 23:42 anaconda-ks.cfg
    -rw-------.  1 root root 5209 12月 15 22:26 .bash_history
    -rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
    -rw-r--r--.  1 root root  176 12月 29 2013 .bash_profile
    -rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
    -rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
    drwx------.  2 root root   80 12月 14 11:59 .ssh(例如.ssh文件就是一个隐藏文件,. 开头的都是隐藏文件或文件夹)
    -rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
    
    
    
    (我们发现下面三个地址都是/root/)
    [root@mylinux ~]# ls -i /root/
    33574978 anaconda-ks.cfg
    [root@mylinux ~]# ls -i .
    33574978 anaconda-ks.cfg
    [root@mylinux ~]# ls -i .ssh/../
    33574978 anaconda-ks.cfg
    (其实就是该目录下子目录的个数)
    [root@mylinux ~]# ls -a 
    .   anaconda-ks.cfg  .bash_logout   .bashrc  .ssh
    ..  .bash_history    .bash_profile  .cshrc   .tcshrc
    
    
    
    [root@mylinux ~]# ls -lta (时间从早到晚排列)
    总用量 32
    -rw-------.  1 root root 5209 12月 15 22:26 .bash_history
    drwx------.  2 root root   80 12月 14 11:59 .ssh
    dr-xr-xr-x. 17 root root  224 12月 14 10:56 ..
    dr-xr-x---.  3 root root  147 12月 13 23:42 .
    -rw-------.  1 root root 1418 12月 12 23:42 anaconda-ks.cfg
    -rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
    -rw-r--r--.  1 root root  176 12月 29 2013 .bash_profile
    -rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
    -rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
    -rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
    
    
    
    
    [root@mylinux ~]# ls -l /root/
    总用量 4
    -rw-------. 1 root root 1418 12月 12 23:42 anaconda-ks.cfg
    [root@mylinux ~]# ls -ld /root/ (加上d会之列出目录本身)
    dr-xr-x---. 3 root root 147 12月 13 23:42 /root/
    
    
    
    • 常用ls命令总结
    -l    -i   -a  -t    -h   -d
    

    2.4 文件类型

    • 文件类型详解
    [root@mylinux ~]# ls -la
    总用量 32
    dr-xr-x---.  3 root root  147 12月 13 23:42 .
    dr-xr-xr-x. 17 root root  224 12月 14 10:56 ..
    -rw-------.  1 root root 1418 12月 12 23:42 anaconda-ks.cfg
    -rw-------.  1 root root 5471 12月 15 23:28 .bash_history
    -rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
    -rw-r--r--.  1 root root  176 12月 29 2013 .bash_profile
    -rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
    -rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
    drwx------.  2 root root   80 12月 14 11:59 .ssh
    -rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
    
    dr-xr-x---. (开头的第一位d就表示文件的类型,d这里表示的是目录)
    -rw-------. (开头的第一位 - ,表示这是一个普通文件)
    crw-rw----.(开头第一位是c,表示字符串设备,一般在/dev/下)
    lrwxrwxrwx.(开头第一位是l,表示软连接硬链接文件)
    brw-rw----.(开头第一位是b,表示块设备,比如光盘和磁盘)
    srw-rw-rw-.(开头第一位是s,表示通信的文件,同一台机器进程和进程之间的通信,/dev/log里面有)
    
    
    开头为 - 的为白色的文件为普通文件,可以通过cat 查看
    [root@mylinux ~]# cat anaconda-ks.cfg
    而类似 /bin/ls 则是一种被编译过的二进制文件,不能查看
    
    • 文件类型总结
    dr-xr-x---. (开头的第一位d就表示文件的类型,d这里表示的是目录)
    -rw-------. (开头的第一位 - ,表示这是一个普通文件)
    crw-rw----.(开头第一位是c,表示字符串设备,一般在/dev/下)
    lrwxrwxrwx.(开头第一位是l,表示软连接硬链接文件)
    brw-rw----.(开头第一位是b,表示块设备,比如光盘和磁盘)
    srw-rw-rw-.(开头第一位是s,表示通信的文件,同一台机器进程和进程之间的通信,/dev/log里面有)
    
    
    开头为 - 的为白色的文件为普通文件,可以通过cat 查看
    [root@mylinux ~]# cat anaconda-ks.cfg
    而类似 /bin/ls 则是一种被编译过的二进制文件,不能查看
    

    2.5 alias命令

    • which查看命令别名
    [root@mylinux ~]# which ls ll (查看别名,并看该命令绝对路径)
    alias ll='ls -l --color=auto' (ll 为 /usr/bin/ls,加上了 -l --color=auto 这些选项后生成的别名,类似快捷方式)
        /usr/bin/ls
    alias ls='ls --color=auto'
        /usr/bin/ls
    
    • alias查看别名,自定义或取消别名
    [root@mylinux ~]# alias (查看系统有哪些别名)
    alias cp='cp -i'
    alias egrep='egrep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias grep='grep --color=auto'
    alias l.='ls -d .* --color=auto'
    alias ll='ls -l --color=auto'
    alias ls='ls --color=auto'
    alias mv='mv -i'
    alias rm='rm -i'
    alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
    
    [root@mylinux ~]# alias wsl='ls -lhat' (自定义别名)
    [root@mylinux ~]# wsl
    总用量 32K
    -rw-------.  1 root root 5.4K 12月 15 23:28 .bash_history
    drwx------.  2 root root   80 12月 14 11:59 .ssh
    dr-xr-xr-x. 17 root root  224 12月 14 10:56 ..
    dr-xr-x---.  3 root root  147 12月 13 23:42 .
    -rw-------.  1 root root 1.4K 12月 12 23:42 anaconda-ks.cfg
    -rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
    -rw-r--r--.  1 root root  176 12月 29 2013 .bash_profile
    -rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
    -rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
    -rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
    
    
    [root@mylinux ~]# unalias wsl (取消别名)
    
    
    
    [root@mylinux ~]# echo $PATH (查看环境变量)
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin (所有在这里面的环境变量都可以直接使用其中的命令)
    
    
    

    相关文章

      网友评论

        本文标题:系统目录结构、文件类型、ls、which、alias

        本文链接:https://www.haomeiwen.com/subject/dpbrwxtx.html