Linux 命令白皮书

命令目录


查询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个物理CPU2,支持超线程,所有有4逻辑CPU

查询Linux 磁盘空间使用率


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

df -hdf -i区别是什么?

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

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

df -h

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

df -i

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

不同的是:

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

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

文件查看方式----cat


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

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

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

# 在屏幕上显示文件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 : 新的文件拥有者的使用者 ID
  • group : 新的文件拥有者的使用者组(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 中的 EDITERTERM 变量做了修改,则能够用source命令重新执行 .bash_profile 中的命令而不用注销并重新登录

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

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

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

shell命令:${var:-word}


如果var或者未设定,返回wordvar不变。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值