zoukankan      html  css  js  c++  java
  • CentOS centos7的目录结构, 文件系统常用命令(pwd,cd,mkdir,touch,ls,cat,echo,cp,mv,rm), vim编辑器

    centos7的目录结构(linux所有的都文件,万物皆文件)

    bin  ---- 命令,二进制文件的存放目录
    boot ----- 系统引导程序+系统的内核 
    dev   ---- 设备 硬盘,光驱
    etc   ---- 存储系统或者服务的配置文件
    home  ---- 普通用的家目录,贫民窟
    lib  ----- 库文件存放目录
    lib64 ---- 库文件的存放目录(64位系统)
    media ---- linux识别的设备,比如u盘等,挂这个目录
    mnt  ----- 临时的挂载点目录
    opt  ----- 第三方的软件安装在整理
    proc ----- 虚拟目录,显示内存中的信息(进场,内核的信息)
    root -----  root的家目录 相当于皇宫
    run  -----  放的启动的东西
    sbin  ---  超级命令,只用root用户才能用的命令
    srv   ----- service的缩写,存放的是一些启动后需要的数据
    sys  ------ 虚拟目录,内存信息
    tmp  ----- 临时文件的存放位置
    usr ---- 存放用户的程序
    var ----- 存放经常变化的文件,比如日志等

    文件系统常用命令

    1 pwd 显示当前所在的路径
    解释:pwd =  print working directory 显示当前所在的目录
    [root@localhost run]    # pwd
    /run
    [root@localhost network-scripts]# pwd
    /etc/sysconfig/network-scripts
    2 cd 切换目录结构
    解释: cd ---> change directory 改变目录信息
    ##注意点 /目录  表示绝对路径   ; 目录 表示相对路径
    
    #绝对路径的方式
    [root@localhost run]# cd /etc/sysconfig/network-scripts/
    [root@localhost network-scripts]# pwd
    /etc/sysconfig/network-scripts
    [root@localhost network-scripts]# cd /etc
    [root@localhost etc]# cd /etc
    [root@localhost etc]# cd /home
    [root@localhost home]# pwd
    /home
    
    #相对路径的方式
    [root@localhost home]# cd /etc
    [root@localhost etc]# cd sysconfig/
    [root@localhost sysconfig]# pwd
    /etc/sysconfig
    
    # 快速回到进入自己的家目录
    [root@localhost sysconfig]# cd ~
    [root@localhost ~]# pwd
    /root
    [root@localhost ~]# cd /root
    [root@localhost ~]# pwd
    /root
    [root@localhost ~]# 
    [root@localhost ~]# cd /etc/sysconfig/network-scripts/
    [root@localhost network-scripts]# cd     # 回到家目录
    [root@localhost ~]# 
    
    
    # 快速回到自己进过的目录
    [root@localhost ~]# cd /etc/sysconfig/
    [root@localhost sysconfig]# cd /bin
    [root@localhost bin]# pwd
    /bin
    [root@localhost bin]# cd -
    /etc/sysconfig
    [root@localhost sysconfig]# pwd
    /etc/sysconfig
    [root@localhost sysconfig]#
    
    #返回当前路径的上一级目录
    
    [root@localhost lib]# cd /etc/sysconfig/network-scripts/
    [root@localhost network-scripts]# pwd
    /etc/sysconfig/network-scripts
    [root@localhost network-scripts]# cd ../
    [root@localhost sysconfig]# pwd
    /etc/sysconfig
    [root@localhost sysconfig]# cd /etc/sysconfig/network-scripts/
    [root@localhost network-scripts]# cd ../../
    [root@localhost etc]# pwd
    /etc
    [root@localhost etc]# cd /etc/sysconfig/network-scripts/
    [root@localhost network-scripts]# cd ../../../../../../../../../
    [root@localhost /]# pwd
    /
    3 mkdir创建目录信息
    mkdir ---> make directory
    
    [root@localhost /]# cd /oldboy
    -bash: cd: /oldboy: No such file or directory
    [root@localhost /]# mkdir /oldboy
    [root@localhost /]# cd /oldboy/
    [root@localhost oldboy]# pwd
    /oldboy
    
    #用-p参数创建多级目录
    [root@localhost oldboy]# mkdir /oldboy/olddog/jason
    mkdir: cannot create directory ‘/oldboy/olddog/jason’: No such file or directory
    [root@localhost oldboy]# mkdir /oldboy/olddog
    [root@localhost oldboy]# mkdir /oldboy/olddog/jason
    [root@localhost oldboy]# cd /oldboy/olddog/jason/
    [root@localhost jason]# pwd
    /oldboy/olddog/jason
    [root@localhost jason]# cd /
    [root@localhost /]# mkdir -p /oldboy/oldgirl/tank
    [root@localhost /]# cd /oldboy/oldgirl/tank/
    [root@localhost tank]# pwd
    /oldboy/oldgirl/tank
    
    #我们在创建目录的时候最好是用绝对路径
    4 touch 创建文件(摸)
    [root@localhost tank]# cd /oldboy/
    [root@localhost oldboy]# pwd
    /oldboy
    [root@localhost oldboy]# touch oldboy.txt
    [root@localhost oldboy]# ls
    oldboy.txt  olddog  oldgirl
    [root@localhost oldboy]# touch /oldboy/olddog/jj
    [root@localhost oldboy]# ls /oldboy/olddog/
    jason  jj
    #在linux里面不会通过后缀名来区分文件的类型,但是我们约定,你什么样的文件,就用什么后缀名,免得搞不清楚
    5 ls 检查文件或者文件目录是否存在,并列出目录底下的文件
    ls ----> list
    
    [root@localhost /]# cd oldboy/
    [root@localhost oldboy]# ls
    oldboy.txt  olddog  oldgirl
    [root@localhost oldboy]# ls ol    # 判断有没有改文件或文件夹
    ls: cannot access ol: No such file or directory
    
    [root@localhost oldboy]# ls -l
    total 0
    -rw-r--r--. 1 root root  0 Mar 24 18:09 oldboy.txt
    drwxr-xr-x. 3 root root 29 Mar 24 18:10 olddog
    drwxr-xr-x. 3 root root 18 Mar 24 18:06 oldgirl
    
    [root@localhost oldboy]# ls -ltr 
    total 0
    drwxr-xr-x. 3 root root 18 Mar 24 18:06 oldgirl
    -rw-r--r--. 1 root root  0 Mar 24 18:09 oldboy.txt
    drwxr-xr-x. 3 root root 29 Mar 24 18:10 olddog
    
    [root@localhost oldboy]# ls -lt
    total 0
    drwxr-xr-x. 3 root root 29 Mar 24 18:10 olddog
    -rw-r--r--. 1 root root  0 Mar 24 18:09 oldboy.txt
    drwxr-xr-x. 3 root root 18 Mar 24 18:06 oldgirl
    
    # ls -l 默认是创建时间最新到最老排序(测试是按照文件名排序)
    # ls -lt 创建时间最新到最老排序
    # ls -ltr 创建时间最老到最新排序
    
    ls -a 表示查看当前文件夹底下的所有文件,包括隐藏文件
    6 cat 查看文件信息的命令
    # cat 是查看文件信息
    [root@localhost oldboy]# cat /oldboy/oldboy.txt 
    123
    [root@localhost oldboy]# cat oldgirl.txt 
    456
    #查看多个文件的文件信息
    [root@localhost oldboy]# cat oldboy.txt oldgirl.txt 
    123
    456
    
    # 将文件中的内容读取出来,放入到另一个文件中
    [root@localhost oldboy]# cat oldboy.txt oldgirl.txt  > jason.txt  # 创建并覆盖写入 >>为接着写入
    [root@localhost oldboy]# cat jason.txt
    123
    456
    7 echo 将信息进行输出
    # 直接输出信息
    [root@localhost oldboy]# echo "hello world"
    hello world
     
    # 将echo的内容写入到文件 ,> 是覆盖写入,>> 是追加写入
    [root@localhost oldboy]# echo "hello world" > lxx.txt    # 创建并覆盖写入
    [root@localhost oldboy]# ls
    jason.txt  lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt
    [root@localhost oldboy]# cat lxx.txt 
    hello world
    [root@localhost oldboy]# echo "hello world" > lxx.txt
    [root@localhost oldboy]# cat lxx.txt 
    hello world
    [root@localhost oldboy]# echo "hello world" >>  lxx.txt
    [root@localhost oldboy]# cat lxx.txt 
    hello world
    hello world
    8 cp复制
    # cp  --->copy
    语法格式: cp 参数(可选) 要复制的信息   复制到什么位置
    
    # 在复制文件。在复制文件的时候,要复制的文件不要加/,一般是只能复制目录的时候加/
    [root@localhost oldboy]# cp /etc/hosts /oldboy/
    [root@localhost oldboy]# ls
    hosts  jason.txt  lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt
    [root@localhost oldboy]# cat hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    [root@localhost oldboy]# cp /etc/hosts /oldboy/    # 复制文件夹已存在该文件
    cp: overwrite ‘/oldboy/hosts’? y    # 是否覆盖
    
    # 复制文件夹
    [root@localhost sysconfig]# cp /etc/sysconfig/ /oldboy/oldgirl    
    cp: omitting directory ‘/etc/sysconfig/’
    [root@localhost sysconfig]# cp -r  /etc/sysconfig/ /oldboy/oldgirl #复制整个文件夹 -r递归里面所有
    [root@localhost sysconfig]# cd /oldboy/oldgirl
    [root@localhost oldgirl]# ls
    sysconfig  tank
    [root@localhost oldgirl]# cd /oldboy/oldgirl/sysconfig/
    [root@localhost sysconfig]# pwd
    /oldboy/oldgirl/sysconfig
    
    cp :的参数
    -r 进行递归复制
    -p 拷贝是时候属性保存不变
    -d 和链接相关的文件
    -a == -drp    # 全部
    
    # 利用cp做备份
    [root@localhost oldboy]# cat jason.txt 
    123
    456
    [root@localhost oldboy]# cp jason.txt  jason.txt.bak    # 一般备份文件以.bak命名
    [root@localhost oldboy]# ls
    hosts  jason.txt  jason.txt.bak  lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt
    [root@localhost oldboy]# rm -rf jason.txt
    [root@localhost oldboy]# ls
    hosts  jason.txt.bak  lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt
    [root@localhost oldboy]# cp jason.txt.bak  jason.txt
    [root@localhost oldboy]# ls
    hosts  jason.txt  jason.txt.bak  lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt
    [root@localhost oldboy]# cat jason.txt
    123
    456
    
    # 如果cp的时候,多个文件覆盖,会出现多次确定,如何避免
    [root@localhost oldboy]# cp -r /etc/sysconfig/ /oldboy/oldgirl
    cp: overwrite ‘/oldboy/oldgirl/sysconfig/ip6tables-config’? y
    cp: overwrite ‘/oldboy/oldgirl/sysconfig/iptables-config’? y
    cp: overwrite ‘/oldboy/oldgirl/sysconfig/cbq/avpkt’? ^C
    
    #解决办法    cp 不重复提示
    [root@localhost oldboy]# cp -r /etc/sysconfig/ /oldboy/oldgirl
    9 mv 剪切命名
    mv --move
    对文件或者文件夹进行剪切(移动)
    语法格式: mv 要移动的文件或者文件夹  移动要什么位置
    #在根目录创建test文件夹,然后创建heihei.txt
    [root@localhost oldboy]# mkdir /test
    [root@localhost oldboy]# cd /test
    [root@localhost test]# touch heihei.txt
    
    # 将 /test/heihei.txt文件 剪切(移动)到/oldboy/shanghai/的文件夹,
    [root@localhost test]# mv /test/heihei.txt  /oldboy/shanghai/
    mv: cannot move ‘/test/heihei.txt’ to ‘/oldboy/shanghai/’: Not a directory
    
    #创建/oldboy/shanghai文件夹
    
    [root@localhost test]# mkdir /oldboy/shanghai
    [root@localhost test]# mv /test/heihei.txt  /oldboy/shanghai/
    [root@localhost test]# cd /oldboy/shanghai
    [root@localhost shanghai]# ls
    heihei.txt
    #原来的/test/heihei.txt文件消失
    [root@localhost shanghai]# cd /test
    [root@localhost test]# ls
    
    
    # 将 /test/heihei.txt文件 剪切(移动)到/oldboy/shanghai,如果不加/,表示将heihei.txt文件内容写入
    shanghai,文件,并将名字改成shanghai
    
    # 在linux系统没有重命名这个东西,我们可以同mv 命令实现
    [root@localhost oldboy]# ls
    hosts  jason.txt  jason.txt.bak  lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt  shanghai
    [root@localhost oldboy]# mv lxx.txt lxxsb.txt
    [root@localhost oldboy]# ls
    hosts  jason.txt  jason.txt.bak  lxxsb.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt  shanghai
    10 rm 命令(删除)
    rm --->remove 
    语法:rm 参数  要删除的数据信息
    
    #删除文件
    [root@localhost ~]# cd /oldboy/
    [root@localhost oldboy]# ls
    hosts  jason.txt  jason.txt.bak  lxxsb.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt  shanghai
    [root@localhost oldboy]# rm jason.txt.bak 
    rm: remove regular file ‘jason.txt.bak’? y
    [root@localhost oldboy]# ls
    hosts  jason.txt  lxxsb.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt  shanghai
    
    # 删除文件夹
    [root@localhost oldboy]# rm shanghai
    rm: cannot remove ‘shanghai’: Is a directory
    [root@localhost oldboy]# rm -r shanghai
    rm: descend into directory ‘shanghai’? y
    rm: remove regular empty file ‘shanghai/heihei.txt’? y
    rm: remove directory ‘shanghai’? y
    
    #强行删除    
    [root@localhost oldboy]# ls
    hosts  jason.txt  lxxsb.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt
    [root@localhost oldboy]# rm -f oldboy.txt     # -f不提醒,保存删除文件不存在
    [root@localhost oldboy]# rm -rf olddog
    [root@localhost oldboy]# ls
    hosts  jason.txt  lxxsb.txt  oldgirl  oldgirl.txt
    
    #centos7这个命令会保护
    rm -rf /
    #rm -rf /* 不受保护
    vim编辑器

    阿里镜像源

     

    vim三种模式切换

    #安装之前先切换镜像源
    https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11yCmuQx
    # 要用vim要安装
    #命令:yum -y install vim 或者 yum install vim -y    # -y表示确定
    
    # vim 是编辑器,他有三种状态
    1 正常模式
        vim 文件 进入后就vim的正常模式,从正常如何进入编辑模式,输入 i,o,a,I,O,A,R,都可以,但是
        我们只要记住一个i,因为方便记忆。
        
        正常模式底下的命令:
        拷贝: yy 粘贴:p            # 光标所在行复制,并在光标下一行粘贴
        
        拷贝当前行向下2行,并粘贴
        拷贝2行:2yy
        粘贴:p
        
        删当前行:
        删除:dd
        删除当前的下两行:
        删除:2dd
      删除下方所有行:dG 光标移动到最后一行:G 光标移到首行:gg ggdG即全删 光标移到第二行:2gg 撤回:u
    2 插入模式 进入编辑模式,就可以直接输入内容。 3 命令模式 1 查找内容: :/关键字 2 取消高亮: :nohl 3 显示行号: :set nu 4 取消行号 :set nonu 5 没有修改情况下退出 :q 6 如果修改了,但我们不想保存, :q! 7 如果修改,并且想保存, :wq # 如果发现vim 不能编辑这个文件 # 原因为linux非正常关机时产生的.swp文件 # 我在这个文件所在目录执行: ls -a # 你会发现有一个 .文件名.swp的隐藏文件 .开头为隐藏文件 #我们执行删除命令将其删除:rm -rf .文件名.swp
  • 相关阅读:
    PHP ftp_nb_continue() 函数
    PHP ftp_mkdir() 函数
    PHP ftp_mdtm() 函数
    普通索引和唯一索引,应该怎么选择
    [学习笔记]拉格朗日中值定理
    asp dotnet core 通过图片统计 csdn 用户访问
    WPF 使用 SharpDx 异步渲染
    WPF 使用 SharpDx 异步渲染
    win10 uwp 解决 SerialDevice.FromIdAsync 返回空
    win10 uwp 解决 SerialDevice.FromIdAsync 返回空
  • 原文地址:https://www.cnblogs.com/ludingchao/p/12561593.html
Copyright © 2011-2022 走看看