Linux 命令白皮书

    技术2025-05-24  56

    命令目录


    查询Linux系统核数查询Linux 磁盘空间使用率文件查看方式----cat文件查看方式----more文件查看方式----less文件查看方式----tail文件创建方式----touch更改文件用户及用户组----chown文件或文件夹同步到其他机器----scp用户环境变量与系统环境变量的区分----/etc/profile、.profile使环境变量生效----sourceshell命令:${var:-word}

    查询Linux系统核数


    1、查看CPU型号

    cat /proc/cpuinfo | grep name | sort | uniq

    2、查看物理CPU数目

    cat /proc/cpuinfo | grep "physical id"

    所有physical id都是0,可知只有1个物理CPU

    也可用管道 排序去重后直接输出物理CPU的个数:

    cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

    3、查看CPU核数和逻辑CPU数目

    CPU核数和线程数可以用类似方法:

    cat /proc/cpuinfo |grep "physical id" | sort | uniq | wc -l cat /proc/cpuinfo |grep "core id" | sort | uniq | wc -l cat /proc/cpuinfo |grep "processor" | sort | uniq | wc -l

    由图可知:1颗物理CPU,双核4线程

    4、快捷统计法

    lscpu

    只有1个物理CPU,2核,支持超线程,所有有4个逻辑CPU

    查询Linux 磁盘空间使用率


    Linux中df命令的功能是用来检查Linux服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

    df -h 和df -i的区别是什么?

    同样是显示磁盘使用情况,为什么显示占用百分比相差甚远?

    df -h:查看磁盘容量的使用情况。

    df -h

    df -i:以inode模式来显示磁盘使用情况。

    df -i

    在df -h 和 df -i 均显示使用率100%时,基本解决方法都是删除文件。

    不同的是:

    df -h:是去删除无用的大文件--------大文件占用大量的磁盘容量。

    df -i:则去删除数量过多的小文件--------过多的文件占用了大量的inode号。

    文件查看方式----cat


    说明:该命令有两项功能。

    用来显示文件的内容,它依次读取由参数file所指明的文件,将它们的内容输出到标准输出上。连接两个或多个文件,如 cat file1 file2 > file3把文件file1和file2的内容合并起来,然后通过输出重定向符>的作用,将它们放入文件file3中。

    示例:(假设file1和file2是当前目录下的两个文件)

    # 在屏幕上显示文件file1的内容 cat file1 # 同时显示文件file1和file2的内容 cat file1 file2 # 将文件file1和file2合并后放入文件file3中 cat file1 file2 > file3

    注意:当cat的文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。

    为了控制滚屏

    Ctrl+S键:停止滚屏Ctrl+Q键:恢复滚屏Ctrl+C键:终止该命令的执行,并且返回Shell提示符状态。

    文件查看方式----more


    more命令显示文件内容,每次显示一屏。

    说明:该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比:–More–(XX%)可以用下列不同的方法对提示做出回答:

    ①Space键,显示文本的下一屏内容。 ②Enter键,只显示文本的下一行内容。 ③斜线符(/),接着输入一个模式,可以在文本中寻找下一个相匹配的模式。 ④H键,显示帮助屏,该屏上有相关的帮助信息。 ⑤B键,显示上一屏内容。 ⑥Q键,退出more命令。

    文件查看方式----less


    与more命令一样,less命令也用来分屏显示文件的内容。

    但是二者存在差别:less命令允许用户向前或向后浏览文件,而 more命令只能向前浏览。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。

    文件查看方式----tail


    tail命令在屏幕上显示指定文件的末尾若干行。

    # tail命令在屏幕上显示指定文件的末尾10行。 tail file # tail -f 当文件增长时输出附加的数据。 tail -f file # tail -N 输出最后的N行,而不是默认的10行。 tail -100 file

    文件创建方式----touch


    # touch file 在当前目录下建立一个空文件file touch file

    更改文件用户及用户组----chown


    Linux/Unix 中所有的文件皆有拥有者。利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表。

    一般来说,这个指令只有系统管理者(root)可以使用,一般使用者没有权限可以改变别人的文件拥有者,也没有权限把自己的文件拥有者改设为别人。只有系统管理者(root)才有这样的权限。

    user : 新的文件拥有者的使用者 IDgroup : 新的文件拥有者的使用者组(group)-R : 处理指定目录以及其子目录下的所有文件

    将文件 file.txt 的拥有者设为 test,群体的使用者 testgroup :

    chown test:testgroup file.txt

    将目前目录下的所有文件与子目录的拥有者皆设为 test,群体的使用者 testgroup:

    chown -R test:testgroup folder

    文件或文件夹同步到其他机器----scp


    scp -r folder [用户名]@[机器地址]:/home/test

    用户环境变量与系统环境变量的区分----/etc/profile、.profile


    Linux环境变量设置的文件:

    /etc/profile 全局用户,应用于所有的Shell。 $HOME/.profile 当前用户,应用于所有的Shell。

    以添加mongodb server为例:

    修改方法一:

    export PATH=/usr/local/mongodb/bin:$PATH

    配置完后可以通过echo $PATH查看配置结果。

    生效方法:立即生效有效期限:临时改变,只能在当前的终端窗口中有效,当前窗口关闭后就会恢复原有的path配置用户局限:仅对当前用户

    修改方法二:

    通过修改profile文件,要求有ROOT用户权限:

    vim /etc/profile #找到设置PATH的一行,添加: export PATH=/usr/local/mongodb/bin:$PATH 生效方法:系统重启有效期限:永久有效用户局限:对所有用户

    如果需要让/etc/profile文件修改后立即生效,可以使用如下命令:

    source /etc/profile

    修改方法三:

    vim $HOME/.profile #找到设置PATH的一行,添加: export PATH=/usr/local/mongodb/bin:$PATH 有效期限:永久有效用户局限:对当前用户

    如果需要让/etc/profile文件修改后立即生效,可以使用如下命令:

    source .profile

    使环境变量生效----source


    source命令用法:source FileName

    作用:在当前bash环境下读取并执行FileName中的命令。

    注:该命令通常用命令.来替代。

    使用范例:

    source filename # 中间有空格 . filename

    source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是个点符号,(从Bourne Shell而来)是source的另一名称。

    同样的,当前脚本中配置的变量也将作为脚本的环境,source(或点)命令通常用于重新执行刚修改的初始化文档,如 .bash_profile 和 .profile 等等。

    例如,在登录后对 .bash_profile 中的 EDITER 和 TERM 变量做了修改,则能够用source命令重新执行 .bash_profile 中的命令而不用注销并重新登录。

    比如在一个脚本a.sh里export $KKK=111 ,假如用./a.sh执行该脚本,执行完毕后,运行 echo $KKK,发现没有值,假如用source来执行 ,然后再echo,就会发现KKK=111。

    因为调用./a.sh来执行shell是在一个子shell里运行的,所以执行后,结构并没有反应到父shell里,但是source的不同就是在本shell中执行,所以能够看到结果。

    这两个命令都以一个脚本为参数,该脚本将作为当前shell的环境执行,即不会启动一个新的子进程。所有在脚本中设置的变量将成为当前Shell的一部分。

    shell命令:${var:-word}


    如果var为空或者未设定,返回word,var不变。

    Processed: 0.014, SQL: 9