• linux专题一之文件管理(目录结构、创建、查看、删除、移动)


        在linux系统中一切都是文件。/ 在linux中为根目录,是一切文件的根目录。本文将通过linux系统的目录结构和与linux文件操作有关的相关命令(touch、mkdir、cp、mv、mv、less , more, head ,tail, rmdir)来说明linux的文件管理。

       一、  Linux系统目录结构及路径。

       1. linux系统目录结构

       用ls  / 查看目录结构 

    /   /home   /root   /dev   /usr   /etc   /boot   /lib    /var   /tmp   /proc  /bin /sbin

    /   通常称为根分区。所有的文件和目录的起始点。只有root用户对此目录拥有写权限。

    /etc  配置文件  包含所有应用程序的配置文件,也包含启动、关闭某个特定程序的脚本,

    例如: /etc/passwd,  /etc/init.d/network等。

    /boot 存放Linux系统启动时需要加载的文件。 Kernel、grub等文件都存放在此。

    /var  是一个可增长的目录,包含很经常变的文件。

    例如,/var/log(系统日志)、/var/lib (包文件)

    /root  管理员所有数据。  root用户的家目录

    /tmp  临时文件存储位置   不能存放重要的数据

    /usr  usr表示的是unix software source     /usr/src   源代码目录

    /bin  命令  此目录包含二进制可执行文件。

    /sbin  系统命令 ,此目录中的命令主要供系统管理员使用,以进行系统维护。

    /dev  包含设备文件。

    在Linux中,一切都被看做文件。终端设备、磁盘等等都被看做文件.   如/dev/sda。

    /home  普通用户所有数据存放在这个目录下 

    /proc这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。

    例如:查看咱们的内存信息,CPU信息

    cat /proc/meminfo  | grep Mem 

    cat /proc/cpuinfo

    /lib   存放系统的库文件

     lib***.a是静态库

    lib***.so是动态库 .   

    静态库在编译时被加载到二进制文件中
    动态库在运行时加载到进程的内存空间中

    简单的说,这些库就是为了让你的程序能够正常编译运行的。

    其作用类似于Windows里的.dll文件。几乎所有的应用程序都须要用到这些共享库。

    后续我会专门开辟关于如何用程序创建动态库和静态库的专题。

    小结:

      · 本地管理员大多数情况下将额外的软件安装在/usr/local目录下,并符号连接在/usr/local/bin下的主执行程序。

      · 系统的所有设置在/etc目录下。

          · 不要修改根目录(“/”)或/usr目录下的任何内容,

          · 目录最好和LINUX发布时保持一致。

          · 大多数工具和应用程序安装在目录:/bin, /usr/sbin, /sbin,

          · 所有的文件在单一的目录树下。没有所谓的“驱动符”。

    2.   绝对路径和相对路径

    路径:在我们平时使用计算机时要找到需要的文件就必须知道文件的位置,而表示文件的位置的方式就是路径。

    绝对路径:

           在Linux中,绝对路径是从”/”开始的,比如/usr、/etc/passwd。如果一个路径是从/开始的,它一定是绝对路径.

    pwd  判断位置

        [root@xiaolyu ~]# pwd 注:判断用户当前所处的位置,也就是说他到底位于哪?

         用户当前位于/root;

        [root@xiaolyu ~]# cd /etc/sysconfig/network-scripts

        [root@xiaolyu network-scripts]# pwd

       /etc/sysconfig/network-scripts

      注:我们以绝对路径方式进入/目录下;

    相对路径:
           相对路径是以 . 或 .. 开始的,在路径中要把.和..当做目录来看。

    .表示用户当前操作所处的位置

    .. 表示上级目录 

    举例实验: 实验1

     /root

    注:得出目录处于/root目录中;
           [root@xiaolyu ~]# cd .

    注:我们进入.
          [root@xiaolyu ~]# pwd

    注:判断当前用户所处的位置;
               /root

    注:得出在/root 目录中 ;

    举例实验: 实验2

    确定当前的位置是/root
           [root@xiaolyu ~]# cd ..

    注:我们切入/root的上级目录
           [root@xiaolyu /]# pwd

    注:判断当前用户所处的位置。
               /

    注:用户当前位于/(根目录)中;

     

    二、 创建/查看/复制/删除 文件和文件夹

    1.  创建文件和文件夹

    touch 

    作用:常用来创建空文件

    语法: touch 文件名

    [root@xiaolyu ~]# touch a.txt

     

    mkdir

    作用:创建目录

    语法:mkdir 目录名

    [root@xiaolyu ~]# mkdir test

    [root@xiaolyu ~]# mkdir -p test/a/b/c

    -p 再创建时连通父目录一起创建

    2. 查看文件

    cat

    作用:查看文件内容

    语法:cat 文件名

     

    分页查看: more 、less、head、tail

    more  +  文件名

    例:

    more  /etc/passwd

    按下回车刷新一行,按下空格刷新一屏

    q 退出

    less  查看文件名字

    q 退出

    使用光标键可以向上翻页

     

    linux中more与less的区别

    more:不支持后退,但几乎不需要加参数,空格键是向下翻页,Enter键是向下翻一行,在不需要后退的情况下比较方便。

    less:支持前后翻滚,既可以向上翻页(pageup按键),也可以向下翻页(pagedown按键)。空格键是向下翻页,Enter键是向下翻一行。而且less可以向下查看n行。只要在:的地方输入行数n即可。

    head

    -n 数字    显示多少行

    [root@xiaolyu ~]# head -3 /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    bin:x:1:1:bin:/bin:/sbin/nologin

    daemon:x:2:2:daemon:/sbin:/sbin/nologin

     

    tail

    从最后一行开始,从后往前,查看文件,默认显示最后10行

    -n  显示多少行

    [root@xiaolyu ~]# useradd nginx

    [root@xiaolyu ~]# tail -1 /etc/passwd

    nginx:x:1002:1002::/home/nginx:/bin/bash

    [root@xiaolyu ~]# 

    -f  动态显示数据(不关闭)  常用来查看日志

    cp

    作用:复制文件

    语法:cp 源文件  目标文件

    -r 包含子目录和文件  。

    [root@xiaolyu ~]# cp -r /boot/grub2/ /root/

    重命名:

    mv 

    语法:mv 源:文件或目录名    目标:文件或目录名

    [root@xiaolyu ~]# mv rm.txt mk.txt

     

    3 删除文件和文件夹

    rm  

    作用:删除文件或目录

    语法: rm -rf  文件或目录名

    -r  递归删除(可以删除目录和目录里面的东西)

    -f  强行删除

    rmdir 

    作用:删除空的文件夹。(这个命令意义不大)。

    语法:rmdir  空的文件夹名。

    [root@xiaolyu ~]# rm x
    rm: cannot remove ‘x’: Is a directory
    [root@xiaolyu ~]# rmdir x
    rmdir: failed to remove ‘x’: Directory not empty
    [root@xiaolyu ~]# rm lvjj.txt
    rm: remove regular file ‘lvjj.txt’? n
    [root@xiaolyu ~]# cd x
    [root@xiaolyu x]# ls
    test.txt
    [root@xiaolyu x]# cd ..
    [root@xiaolyu ~]# rm -fr x
    [root@xiaolyu ~]# ls
    anaconda-ks.cfg    Downloads    mimz~    redhat.txt
     a.out    err.log    mkd    Templates
     lvjj.txt     hello     Music    test.txt
    [root@xiaolyu ~]#

  • 相关阅读:
    03 java中的基本数据类型和运算符
    02 Eclipse安装
    01 HelloWorld
    express不是内部或外部命令
    win10 内存或系统资源不足,无法打开PPT
    win 10中解决“此文件在另外一个进程中运行”的问题
    后台查找密码暴力破解
    DVWA--全等级暴力破解(Burte Force)
    DVWA简单搭建
    破解版
  • 原文地址:https://www.cnblogs.com/jasmine-Jobs/p/5769656.html
Copyright © 2020-2023  润新知