• 【Linux笔记】基本指令(一)


    一道残阳铺水中

    半江瑟瑟半江红


    目录

    Linux基本指令

    罗列目录内容:ls 指令

    显示当前目录位置信息:pwd 指令

    切换工作目录:cd 指令

    创建文件修改时间戳:touch指令 

    创建空目录:mkdir指令 

    删除空目录:rmdir指令 

    删除非空目录或文件:rm指令 

    查手册:man指令

    复制文件或者目录:cp指令 

    记事本的编辑:nano指令 

    Linux基本指令

    罗列目录内容:ls 指令

    概念:罗列当前目录下的指定文件或者目录

    格式:

    1. ls (空格)[-选项][目录或文件]
    2. 例如 :ls -a tank.txt
    注意:
    • 个别命令使用不遵循此格式。比如:直接使用  ls 或者 不写入文件或者目录
    • 当有多个选项时,可以写在一起。比如:ls -la
    常用选项:
    ls :罗列当前目录的内容
    ls -l :查看详细信息,元素数据信息(用户、组、大小、创建时间、权限信息、文件类型) 
    ls -a :查看所有文件包括隐藏文件 ( . 开头的文件
    ls -al 或者 ls -la (指令的顺序随意):两个指令的功能并用,查看所有文件的详细内容

    为了更好的观察目录下的文件名我们这里安装了 tree 进行展示:

    安装指令

    yum install -y tree

    Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件

    (跟数据结构知识的联系)

    这样我们就具体的知道当前目录下有哪些文件 

    格式: tree[路径]

    我们这里的 . 表示在当前路径下


    ls 罗列当前目录的内容

    这样当前目录下的目录信息和文件信息都对的上了

    ls -l 查看详细信息,元素数据信息

    我们这里可以看到看到:用户、组、大小、创建时间、权限信息、文件类型的详细信息

    不写目录或者文件名表示查看所有信息,当然我们也可以指定查看具体文件的信息,比如:

    这里就只显示了 tank.txt 文件的信息啦 ~

    注意:因为这个指令非常常用所以 Linux 将 ls -l 简化成 ll

    ls -a 查看所有文件包括隐藏文件

    这里 . 表示当前路径,.. 表示上一级路径

    ls -al 查看所有文件的详细内容

     ls 还有很多指令选项这里就不例举了 

    1. -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
    2. -d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
    3. -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
    4. -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
    5. -l 列出文件的详细信息。
    6. -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
    7. -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)
    8. -r 对目录反向排序。
    9. -t 以时间排序。
    10. -s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
    11. -R 列出所有子目录下的文件。(递归)
    12. -1 一行只输出一个文件。

    显示当前目录位置信息:pwd 指令

    概念:显示用户当前所在的目录

    格式:

    pwd
    常用选项:无

    Linux 下的 /符号 是路径分割符,而我们起始的目录 /root 称之为根目录  


    切换工作目录:cd 指令

    概念:改变工作目录,将当前工作目录改变到指定的目录下

    格式:

    cd 目录名

    常用选项:

    cd .. :返回上级目录
    cd + 绝对路径:例如,/root/Mack/Tank
    cd + 相对路径:例如,./Tank
    cd ~:进入用户家目
    cd - :返回最近访问目录

    cd + 绝对路径

    此时我们还在 root根目录 下,cd 之后就到了指定的路径下

    绝对路径是从 /斜线根 开始的路径

     cd + 相对路径

    相对路径是不从 /斜线 开始的路径,而是从当前目录或指定的目录开始

    热键:

    <1>在使用cd命令时,如果使用键盘上 Tab键 的自动补齐功能,可以提高输入速度和准确度

    这个 Tab键 的自动补齐功能同样适用于其他命令

    (是连续按两次哦~)

    <2>在指令输错的时候,可以按 ctrl + c 进行终止

     cd ~ 进入用户家目

    root 用户首次登录,所处的路径,叫做 root 的家目录

    如下图首次登入的路径是 /root 就是家目录

     cd - :返回最近访问目录(返回上一级目录)


    创建文件修改时间戳:touch指令 

    概念:touch 命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件(我们这里主要讲创建文件

    格式:

    touch [选项] 文件名

    选项:

    1. -a  或--time=atime或--time=access或--time=use只更改存取时间。
    2. -c  或--no-create  不建立任何文档。
    3. -d  使用指定的日期时间,而非现在的时间。
    4. -f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
    5. -m  或--time=mtime或--time=modify  只更改变动时间。
    6. -r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
    7. -t  使用指定的日期时间,而非现在的时间。

    创建一个文件

    创建多个文件

    注意:以上我们创建多个同名文件(一个数字之差),若我们想要查看这类文件的所有内容

    我们可以 文件名* 进行访问 


    创建空目录:mkdir指令 

    概念:在当前目录下创建一个空目录

    格式:
    mkdir [选项] 文件名

    常用选项:

    mkdir -p :递归创建多个空目录

    mkdir 创建一个空目录

    mkdir -p 创建多个空目录

    当前目录中创建了多个目录

    当前目录往后依次进行创建(每个目录中创建一个空目录)

    我们先进入 My目录 再递归创建 4 个空目录,然后 tree . 一下就知道创建是否成功

    为什么是递归创建呢?原因是我们的 Linux 中文件和目录都是由一个树组成的

    而树我们在数据结构中学过是递归创建的


    删除空目录:rmdir指令 

    概念:rmdir是一个与mkdir相对应的命令。mkdir是建立空目录,而rmdir是删除空目录

    格式:

    rmdir 文件名

    常用格式:

    rmdir -p :当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除

    rmdir 删除空目录

    rmdir -p 递归删除空目录

    那怎么删除非空目录呢?我们这里引出一条指令 -- rm


    删除非空目录或文件:rm指令 

    概念:可以同时删除文件或目录

    格式:

    rm [选项] 文件名

    常用选项:

    rm -f 即使文件属性为只读 ( 即写保护 ) ,亦直接删除
    rm -i 删除前逐一询问确认
    rm -r : 删除目录及其下所有文件
    rm -rf :直接删除当前目录下的所有内容

    rm -r 递归删除目录及其以下所有文件(但是要询问,因为你是Boss,怕出错所以反复询问)

    因为我的 dir1 中有一个 dir2 目录所以是非空目录

    删除的时候要递归到最后一个目录,再回溯往前删除文件及目录

     rm -fr 递归删除目录及其以下所有文件(无需询问,直接删除)


    查手册:man指令

    安装 man指令 的代码

    yum install -y man-pages
    

    概念:Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助

    格式:
     man [选项] 查询命令

    常用选项:

    1. -k 根据关键字搜索联机帮助
    2. -num 只在第num章节找
    3. -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕

    手册的内容:

    解释一下, 手册分为 8
    1 是普通的命令
    2 是系统调用 , open,write 之类的 ( 通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
    3 是库函数, printf,fread
    是特殊文件, 也就是  /dev 下的各种设备文件
    5 是指文件的格式, 比如  passwd, 就会说明这个文件中各个字段的含义
    6 是给游戏留的, 由各个游戏自己定义
    7 是附件还有一些变量, 比如向  environ  这种全局变量在这里就有说明
    8 是系统管理用的命令, 这些命令只能由  root  使用, 如  ifconfig

    以下举个例子~ 比如说我 C语言 中的 srtren函数 忘记了,想在 Linux 中查找资料 

    当我输入完这条指令时,页面就会跳转到函数的简介

    我们查询完毕,按 q 退出查询


    复制文件或者目录:cp指令 

    概念:将一个目录或者文件的内容拷贝到另一个目录或者文件上

    格式:

    cp [选项] 源文件或目录 目标文件或目录

    常用选项:

    1. -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
    2. -i 或 --interactive 覆盖文件之前先询问用户
    3. -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
    4. -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

    说明:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。

     cp 将源文件拷贝到目标文件中

    cat -- 指令是查看文件内容

    cp -r 将源目录拷贝到目标目录中

    因为目录是树形结构,所以我们要递归拷贝~


    记事本的编辑:nano指令 

    安装记事本的代码

    yum install -y nano

     格式:

    nano [文件名][后缀]

    我这里举个栗子~

    我们输入 nano指令 并创建好文件后就会进入编辑界面

    在这个地方按 clrt+x键 之后,按 Y + enter(回撤)就能退出编辑

    如果想要运行还需要安装我们的 gcc 编译器:

    gcc 编译器的安装指令

    sudo yum install gcc

    然后编译链接运行即可~ 

  • 相关阅读:
    #Primavera Unifier:关于零代码/低代码平台特点【2/3】
    较真儿学源码系列-PowerJob启动流程源码分析
    工厂需要什么样的现场管理能力?
    .NET 云原生架构师训练营(权限系统 代码实现 Identity)--学习笔记
    4.2 - 线性表
    excel split text into different rows
    Kafka~基础原理与架构了解
    【C语言】编译器你究竟干了什么?.c为什么变成了.exe?
    Apple :苹果将在明年年底推出自己的 AI,预计将随 iOS 18 一起推出
    前端代码规范神器之f2elint的使用教程
  • 原文地址:https://blog.csdn.net/2301_79201049/article/details/138144444