Linux命令

一:文件目录类(19个)

1.pwd 显示当前目录所对应的绝对路径

2.ls 列出“指定目录下”的文件

ls 【选项】 【目录/文件】 

选项:-a 列出所有文件和目录,包括隐藏文件 ‘.文件名’

          -l 以列表的形式显示所有信息

         -h 人性化的显示文件大小(k m G)

         -R 递归显示:递归列出该目录下所有文件、子目录信息

常用:ls -a 、ls -l、ls  -al(相当于 ll)、ls

3.cd 切换当前路径

cd 【参数】 【要切换到的目录】

  1. 切换到上一个工作目录/访问当前目录的上一级目录:
  2.  切换到home目录/访问当前用户的主目录(家目录)
  3. 切换到 相对本路径上两级的路径
  4. 切换到root目录
    1. 使用绝对路径切换到root目录
    2. 使用相对路径到/root目录,如当前目录在 /home/tom

4.mkdir 创建目录(创建文件夹)

mkdir 【选项】 【要创建的目录或文件】

选项:-p  创建多级目录

  1. 在工作目录下的 runoob2 目录中,建立一个名为 test 的子目录。(分两种情况,runoob2目录存在和不存在)
  2. 创建一个目录 /home/dog
  3. 在home路径下,创建多级目录 /home/animal/tiger

5.rmdir 删除目录

rmdir  【选项】 【要删除的空目录】

选项:-r 递归地 删除此目录及其所有子目录的文件

          -f 强制删除

  1. 删除一个目录 /home/dog

注意:rmdir 删除的是空目录,如果目录下有内容时无法删除

对比区分rm

6.rm 删除目录或文件(删除文件或文件夹)

rm  【选项】  【要删除目录或文件的路径】

选项:同rmdir相同

  1. 删除当前目录下的所有文件及目录
  2. 将/home/hello.txt删除
  3. 递归删除整个文件夹 /home/bbb
  4. 递归强制删除整个文件夹

注意:强制删除不提示的方法:带上 -f 参数即可

7.touch 创建空文件

touch  新文件1的路径  新文件2的路径  .......  //可以是绝对路径,也可以是相对路径

//同时创建多个文件,在touch指令后同时写多个新文件的路径

  1. 在 /home 目录下,创建空文件test1.txt
  2. 同时创建 text3.js 和 text5.js 文件

8.cp 复制目录或文件

cp  【选项】 【源文件目录】  【目的文件目录】

选项:-r  递归地复制整个目录,包括各个子目录的文件

           -f 强制执行

注意:强制覆盖不提示的cp命令
    1.cp指令前加上\
        \cp   [选项]   源目录/文件路径    目的目录/文件路径
    2.cp   -rf
        强制 cp 指令,无视覆盖提醒,直接覆盖

  1. 将 /home/hello.txt 拷贝到 /home/bbb 目录下
  2. 递归复制整个文件夹,将 /home/bbb/ 目录拷贝到 /home/aaa/
  3. 强制复制不提示,将 /home/bbb/ 目录拷贝到 /home/aaa/(两种方式)

9.mv  移动/重命名文件或目录

mv  【旧文件名】  【新文件名】

注意:1.同目录下,mv为“重命名”目录或文件

           2.不同目录下,mv为“移动剪切并重命名”目录或文件

  1. 将 /home/cat.txt 文件,重命名为 pig.txt
  2. 将 /home/pig.txt 文件,移动到 /root 目录下
  3. 将 /home/pig.txt 文件,移动到 /root 目录下改为cat.txt

10.cat  浏览查看文件的内容

cat  【选项】  【要浏览的文件路径】

选项:-n  显示文件的行号

           -A 显示所有格式(回车符、tab符)

注意:cat 只能浏览文件,不能修改文件。

          为浏览方便,一般会加上 管道命令 | more,实现交互式浏览
               cat   -n   /etc/profile | more

  1. 查看 /etc/profile文件,并显示行号
  2. cat file1.txt >> file2.txt 将文件输出附加到另一个文件
  3. cat file1.txt > file2.txt 重定向文件内容,即将一个文件的输出复制到另一个文件(通常,您将使用cp命令来复制文件)
  4. cat filename | grep "keyword" -A 10 根据关键字查看后10行日志 -B 10 前10行的内容
  5. cat filename | grep "keyword" 根据关键字查看日志 

11.more  分页显示文件的内容(交互式浏览)

more   【要查看的文件】

注意:1.它以全屏幕的方式按页显示文本文件的内容
           2.more 指令中内置了若干快捷键(交互指令),可用于交互式浏览操作

可与cat指令结合使用

快捷键:1. 空格   向下翻一页

              2. 回车   向下翻一行

              3. q   立刻退出more界面,不在查看文件的内容

              4. Ctrl+F   向下翻一页/向下滚动一屏,同 空格

              5. Ctrl + B    向上翻一页/返回上一屏

              6. =    输出当前行的行号
              7. :f    输出文件名和当前行号

              8. /XXX  搜寻字符XXX,n=下一结果,N=上一结果
              9. ?XXX   同上,搜寻字符XXX,n=下一结果,N=上一结果

注意:vim快捷键同上

  1. 使用 more 指令查看文件 /etc/profile

12.less  分屏交互式浏览

less  【要查看的文件】

快捷键:1. 空格   向下翻一页

              2. pagedown   向下翻动一页

              3. pageup   向上翻动一页

              4. /字串   向下搜素【字串】;n:向下查找;N:向上查找

              5. ?字串    向上搜素【字串】;n:向上查找;N:向下查找

              6. q    离开less这个程序

  1.  使用less指令查看一个大文件 /var/log/messages-20220403

more和less指令的区别:

    1.“less指令”相对于“more指令”来说,可以动态加载一点一点的读效率高。“就是边下载边看”,且“less指令”可向前向后查看

    2.如果是“查看一个比较大的文件”,更建议用“less”

13.echo  输出内容到控制台

echo  【要输出的内容】

  1. echo指令输出环境变量,如$HOME
  2. echo指令输出字符串 “hello world!”

注意:1.要输出的内容可以是其他指令的执行结果。
           2. echo指令可配合其他指令使用

14.head  显示文件的头部内容

head  【要显示的文件】  //  默认显示文件头10行的内容

head   -n   任意数字  【要显示的文件】  显示文件头xx行的内容

  1. 查看/etc/profile的前面5行代码

15.tail  显示文件的尾部内容(实时查看文件中的内容

tail  【要显示的文件】 //默认显示文件尾10行的内容

tail  -n  任意数字  【要显示的文件】  显示文件尾xx行的内容

注意:tail  -f  【要显示的文件】 

           实时追踪文件的更新数据,动态显示文本最新信息

  1. 查看 /etc/profile 文件的最后 5 行代码
  2. 实时监控 mydata.txt,查看文件有变化时,是否看到改变的内容,实时的追加hello,会显示
  3. 实时查看⽂件中的内容  tail -f /log/msg

16.>/>>  输出重定向:覆写和追加

>   覆写,即复制,相当于‘cp指令’ ,会覆盖源文件的内容

>>  追加,则不会覆盖原文件内容,而只是会在“文件尾部追加”

  1. 将当前工作目录下的所有文件列表(ls -al) 追加写入 AAA 文件中
  2. 将 文件1 的内容覆盖写入 文件2 中
  3. 将 /home 目录下的文件列表 覆盖写入到 /home/info.txt 文件中
    // 如果info.txt文件不存在,则会自动创建info.txt文件
  4. 当前日历信息,追加到 /home/maycal 文件中
        # "cal"指令,显示当前日期
  5. cat file1.txt > file2.txt  重定向文件内容。 即将一个文件的输出复制到另一个文件。通常,使用cp命令来复制文件。
  6. echo “内容” >> 文件  将字符串hello追加到/home/one.txt文件里
        echo “hello” >> /homr/one.txt

17.ln  创建软/硬连接

创建软链接:ln  -s  【源文件路径/文件】  【目标软链接名】

注意:1.软链接,即符号链接,即windows中的快捷方式。

           2.虽然软链接是快捷方式,但进入软链接后,pwd指令显示的路径软链接所在路径

  1. 在 /home 目录下创建一个软链接myroot,链接到 /root
  2. 删除软链接 myroot

这里要将 myroot 写成文件的格式(软链接也是一种文件,类似于windows快捷方式的文件),即不带 /

创建硬链接:ln 【源文件路径/文件】  【目标软链接名】

软链接和硬链接的区别:

1.格式

  • 软连接:ln -s src dest
  • 硬链接:ln src dest

2.文件类型

  • 软链接相当于快捷方式,符号连接f
  • 硬链接相当于cp了一份,和普通文件没有区别

软链接后,src文件和dest文件,大小、时间、node都不一样

硬链接后,src和dest文件,大小、时间、node都一样

相当于执行了cp -p,只是node节点不一样

3.删除源文件,对链接的影响

  • 软链接:删除源文件,则另外一个不存在了。
  • 硬链接:删除源文件,另外一个还存在。

4.总结

  • 硬链接:和普通文件无区别,inode都指向同一个文件在硬盘中的区块
  • 软连接:保存了其代表的文件的绝对路径,是另外一种文件,在硬盘上有独立的区块,访问时替换自身路径

18.history  查看指令的历史记录

  1. 显示所有的历史命令
  2. 显示最近 10 条历史指令
  3. 执行历史编号为 5 的指令  !5

19.wc  计数指令

wc  【参数】  【文件】

选项:-l line:计算行数
          -c 计算字节数
          -m 计算字符数
          -w 计算单词数

wc  -l   文件    // 统计文件的总行数

统计目录 /opt/ 下的子目录
    原理
        计算 ls -l 输出中,以“d”开头的记录条数
        # ls -l 开头第一个字母表示的含义:d/l/-/c/b --> 目录/链接/文件/字符设备/块设备
    ls   -lh    /opt/  |  grep   "^d"   |    wc - l
统计目录 /opt/ 下的子文件数
    原理
        计算 ls -l 输出中,以“-”开头的记录条数
    ls   -lh   /opt/  |   grep   "^-" |  wc- l
统计目录 /opt/ 下所有文件个数,包括各层子目录中的
    原理
        ls -lR 输出,会递归输出所有层级目录的文件列表
        计算 ls -l 输出中,以“-”开头的记录条数
    ls   -lR  /opt/  |  grep "^-" |  wc- l
统计目录 /opt/ 下所有目录个数,包括各层子目录中的
    原理
        ls -lR 输出,会递归输出所有层级目录的文件列表
        计算 ls -l 输出中,以“d”开头的记录条数
    ls   -lR   /opt/ | grep "^d" | wc -l

二.搜素查找类(6个)

1.find 实时查找目录下的指定文件

find  【搜素范围】  【选项】 【要搜素的文件名】

范围:1.当前目录 .  2.根目录   /

选项:1.-name  按文件名  通配符 *

           2.-type  按文件类型  f 普通文件  l 符号链接  d 目录文件

           3.-size  按文件daxiao  +K  -m   G    大于K  小于m   等于G

           4.-user  按文件所有者

           5.-atime  按时间(天) 

  1. 最近第7天被访问过的所有文件
  2. (按内容)查找 /home 目录下的 hello.txt 文件
  3.  从根目录开始查找所有扩展名为 .log 的文本文件
  4. 从当前目录开始查找所有扩展名为 .in 的文本文件
  5. 查找当前目录下都有.txt后缀的文件
  6. (按所有者)查找 /opt 目录下,用户名为 lilixxs 拥有的文件
  7. 查找整个 linux 系统下大于 200M 的文件(+n大于 -n小于 n等于 单位有k,M兆,G)

2.locate  根据索引快速检索文件

locate    【要搜索的文件名】

注意:在第一次运行locate指令前,需要使用updatedb指令创建locate索引数据库

           sudo updatedb

  1. 使用 locate 指令快速定位 text3.js

find和locate的区别

find:find是实时查找。

         find指令将从指定目录下递归的遍历各个子目录,将满足条件的文件或者目录显示在终端。

         如果需要更快的查询,可试试locate

locate:locate并不是实时查找。你需要更新数据库,以获得最新的文件索引信息。

             locate指令无需遍历查找文件,利用事先创建的文件和目录索引数据库实现文件快速搜索。只需要查询索引数据库,因此速度较快。

              但为保证查询结果的准确度,管理员必须要定期更新 locat数据库
 

3.which 查看指令所在的目录

which  【指令名】

  1. 查看 ls 指令所在目录

4.grep和管道符‘|’  过滤查找,查找文件里符合条件的字符串

grep  【选项】  查找内容   被查找的文件

选项:-n  显示匹配的行号

           -i    忽略大小写

           -V  反向查找

  1. 请在hello.txt文件中,查找“yes”所在行,并且显示行号
  2. 在⽂件hello.txt中查找关键词codesheep
  3. 在⽂件hello.txt中查找以sheep开头的内容
  4. 选择hello.txt⽂件中所有包含数字的⾏
  5. 在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行
  6. 反向查找,查找文件名中包含 test 的文件中不包含test 的行

5.管道符‘|’,表示 将前一个指令的处理结果输出 传递给  后面的命令处理。

6.xargs  给其他命令传参数的过滤器

xargs 能够将输入数据转化为特定命令的命令行参数,也能够从文件的输出中读取数据

xargs 一般是和管道一起使用

  1. 从根目录开始查找所有扩展名为 .log 的文本文件,并找出包含 "ERROR" 的行
  2. 从当前目录开始查找所有扩展名为 .in 的文本文件,并找出包含 "thermcontact" 的行
  3. 查找当前目录下的所有 txt 文件,并查看所有这些 txt 文件的信息
     

三.进程管理类(6个)

1.ps 显示当前进程信息

ps 【参数】  用于查看当前系统、当前时刻,有哪些程序正在执行,以及各个程序的执行状况

选项:a指代all——所有的进程

           u指代userid——执行该进程的用户id,

           x指代显示所有程序,不以终端机来区分

           e:显示所有进程信息,等同于-A参数
            p <PID>:显示对应PID的进程

ps -aux
    按照 BSD 格式的指令,显示系统的所有进程信息
ps   -ef
    ps  -ef 以全格式显示当前所有进程(-e 显示所有进程  -f 全格式)
    ps -ef | grep 进程关键字
        过滤出你需要的进程,查找指定的进程
    ps -ef | grep sshd
        查询 sshd 进程的详细信息,获取 sshd 的父进程 ID (PPID)

2.kill 终止进程

kill  【参数】 进程ID/进程名

1.kill 通过进程 ID (PID) 终止进程
    kill [参数] PID
2.killall 通过进程名 (NAME) 终止进程
    killall [参数] 进程名

3.top 动态监控进程, 动态显示cpu/内存/进程等情况

概念
    实时显示系统中各个进程的资源占用状况,类似于“windows的任务管理器” 实时显示进程状态。
    top与ps最大的不同之处,在于 top在执行一段时间可以更新正在运行的进程
格式
    top    [参数]
动态监控进程的交互操作
    输入top命令后,进入到交互界面;接着输入字符命令后显示相应的进程状态
    P
        以CPU使用率排序,默认就是此项

    M
        以内存的使用率排序

    N
        以PID排序
    q
        退出 top 界面

    i
        使top不显示任何闲置或者僵死进程

查看系统中使用CPU、使用内存最多的进程

网络工具

1.netstat

netstat  【参数】

2.lsof 查看文件的进程信息

lsof  -i  文件    //查看文件的进程信息

        查看端口占用的进程状态
            lsof    -i:3306
            列出谁在使用某个端口

        列出所有的网络连接
            lsof -i

        列出所有tcp 网络连接信息
            lsof -i tcp

3.scp  网络复制,基于SSH协议远程复制文件

    格式
        scp   [参数]   [原路径]    [目标路径]
    概念
        scp命令可以在多台Linux系统之间复制文件或目录 ,有些类似于cp命令的功能,但复制的范围却不是本地,而是网络上另一台主机。
        由于是基于SSH协议进行的复制操作,全部数据都是加密的,因此会比HTTP和FTP更加安全。

    例子
        1.从远处复制文件到本地目录
            scp    root@10.6.159.147:/opt/soft/demo.tar     /opt/soft/
            从10.6.159.147机器上的/opt/soft/的目录中下载demo.tar 文件到本地/opt/soft/目录中
        2.从远处复制到本地
            scp   -r    root@10.6.159.147:/opt/soft/test     /opt/soft/
            从10.6.159.147机器上的/opt/soft/中下载test目录到本地的/opt/soft/目录来
        3.上传本地文件到远程机器指定目录
            scp     /opt/soft/demo.tar         root@10.6.159.147:/opt/soft/scptest
            复制本地opt/soft/目录下的文件demo.tar 到远程机器10.6.159.147的opt/soft/scptest目录
        4.上传本地目录到远程机器指定目录
            scp   -r    /opt/soft/test     root@10.6.159.147:/opt/soft/scptest
            上传本地目录 /opt/soft/test到远程机器10.6.159.147上/opt/soft/scptest的目录中

四.权限管理


    1.实例
        -rw-r--r--. 1 mikasa mikasa      141 6月  22 11:19 hello.txt
        0-9位说明
            第0位确定文件类型(d,-,l,c,b)
                d是目录,相当于windows的文件夹
                l是链接文件,相当于windows的快捷方式
                -是普通文件  (比如 .txt  .tar.gz   .py  .cpp)
                c是字符设备文件,鼠标,键盘
                b是块设备,比如硬盘
            第1-3位确定所有者(该文件的所有者)拥有该文件的权限 --user
            第4-6位确定所属组(同用户组的)拥有该文件的权限 --Group
            第7-9位确定其他用户拥有该文件的权限 --Other
        rwx权限详解
            rwx作用到文件
                【r】代表可读(read):可以读取、查看
                【w】代表可写(write):可以修改,但是不代表可以删除该文件
                    删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件
                    “删除文件”要看“目录权限”
                    对文件的删除权限是上层目录的写权限
                    因为删除文件实际上是删除所在目录对该文件的引用地址,所以删除文件实际上是要对所在目录进行写操作。
                【x】代表可执行(execute):可以被执行,相当于“运行文件”(例如exe文件)
            rwx作用到目录
                【r】代表可读(read):可以读取,ls查看目录内容
                【w】代表可写(write):可以修改目录内的内容,对目录进行 创建+删除+重命名目录名
                【x】代表可执行(execute):可以进入该目录,cd 目录
        文件及目录权限实际案例
            ls -l 显示内容
            -rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
            10个字符 确定 不同用户 能对文件干什么
                第一个字符代表文件类型: - l d c b
                其余字符每三个一组(rwx)读(r)写(w)执行(x)
                第一组rwx:文件拥有者的权限是读、写和执行
                第二组rw-:与文件拥有者同一组的用户的权限是读、写但不能执行
                第三组r–:不与文件拥有者同组的其他用户的权限是都只能读
            可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7
            其他说明
                1 
                     若是文件:硬件连接数
                    若是目录:子目录数+文件数
                root 用户
                root 组
                1213 文件大小(字节),如果是文件夹显示4096字节
                Feb 2 09:39 最后修改日期
                abc 文件
    修改权限-chmod
        1.概念
            通过chmod指令,可以修改文件或者目录的权限。
        2.修改方式
            1.第一种方式:+ 、- 、=变更权限
                1
                    +表示“增加权限”
                    -表示“取消权限”
                    =表示“唯一权限”
                2
                    u:所有者(是指文件或者是目录的拥有者)
                    g:所有组
                    o:其他用户
                    a:所有人(u、g、o的总和)
            2.第二种方式:通过数字变更权限
                r=4 w=2 x=1 rwx=4+2+1
                chmod u=rwx,g=rx,o=x 文件目录名
                    相当于chmod 751 文件目录
        3.案例
            1.给abc文件的所有者读写执行的权限,给所在组读执行权限, 给其他组读执行权限
                chmod u=rwx,g=rx,0=x abc
            2.给abc文件的所有者除去执行的权限,增加组写的权限
                chmod u-x,g+w abc
            3.给abc文件的所有用户添加读的权限
                chmod a+r abc
            4.将/home/abc.txt文件的权限修改成 rwx,r-x,r-x,使用数字的方式实现
                chmod   755   /home/abc.txt
        注意:对文件夹(目录)的rwx的细节讨论
            r:读内容,读目录包含的文件
                可以ls,将目录的内容显示
            w:新建子文件/子目录、重命名、删除
            x:执行文件,进入目录(类似于“双击”)
                可以进入到该目录,比如cd

 /proc/meminfo 该文件统计了系统内存的使用情况

cat  /proc/cpuinfo  l查看cpu信息的方法:使用“cat /proc/cpuinfo”命令。在linux系统中CPU信息在启动的过程中被装载到虚拟目录“/proc”下的cpuinfo文件中,因此可以通过“cat /proc/cpuinfo”命令来查看。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux命令PDF是一种包含Linux操作系统中常用命令和其使用方法的电子书格式文件。通过下载和阅读Linux命令PDF,用户可以方便地学习、查找和使用Linux系统中的各种命令Linux命令PDF中通常会包含诸如文件操作、目录管理、进程管理、网络配置、软件安装等方面的命令。通过学习这些命令,用户可以更好地理解和掌握Linux系统的使用。不论是Linux初学者还是有经验的用户,都可以利用Linux命令PDF来提高自己的技能和效率。 Linux命令PDF的优势包括: 1. 全面性:Linux命令PDF中包含了Linux系统中几乎所有的常用命令,用户可根据需要选择学习和掌握特定的命令。 2. 方便性:PDF文件格式易于阅读和搜索,用户可以方便地在文档中查找和定位具体的命令和使用方法。 3. 离线使用:用户可以将Linux命令PDF下载到本地,便于随时查阅,无需依赖网络连接。 4. 可打印性:用户可以将Linux命令PDF打印成纸质文档,以备在没有电脑或电子设备的情况下使用。 5. 更新性:由于Linux系统的不断更新和发展,命令也在不断增加和演变。因此,一些Linux命令PDF会提供定期的更新版本,使用户能够获取到最新的命令和使用方法。 总之,Linux命令PDF是一种有助于用户学习和使用Linux系统的工具。通过下载和了解Linux命令PDF,用户可以很快地了解和掌握Linux系统中的常用命令,从而提高自己的工作效率和技能水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值