环境信息获取
查看系统基本信息
1 | $ uname -a |
Linux : kernel name
ubuntu : network node hostname
5.15.0-76-generic : kernel release
#83~20.04.1-Ubuntu SMP Wed Jun 21 20:23:31 UTC 2023 : kernel version
x86_64 : machine hardware name
x86_64 : processor type
x86_64 : hardware platform
GNU/Linux : operating system
查看 Linux 内核版本
1 | $ cat /proc/version |
还包含了 gcc 编译版本、编译时间。
查看 Ubuntu 系统版本
1 | $ lsb_release -a |
查看 CentOS 系统版本
$ cat /etc/redhat-release
查看 CPU 信息
1 | $ lscpu |
适用平台:包含此命令的所有平台
1 | $ cat /proc/cpuinfo |
适用平台:全平台
查看硬盘使用情况
1 | $ df -hT |
-h Human readable (e.g. 1K 243M 2G)
-T Print filesystem type
查看内存情况
1 | $ free -m |
-m
意为单位为 MB;还可选 -b/-k/-g
。
查看内存详情
1 | $ cat /proc/meminfo |
查看系统时间
1 | $ date |
实时 Mem/CUP
1 | $ top |
默认 3s 刷新一次,按 q 退出。
添加环境变量
在Ubuntu系统中,添加路径到环境变量通常指的是将路径添加到PATH
环境变量中,这样你就可以在任何目录下通过命令行执行该路径下的可执行文件。以下是一些基本的步骤来添加路径到环境变量:
临时添加到环境变量
打开终端:你可以使用快捷键
Ctrl + Alt + T
打开终端。使用
export
命令:1
export PATH=$PATH:/path/to/your/directory
这将把
/path/to/your/directory
添加到当前会话的PATH
环境变量中。注意替换/path/to/your/directory
为你实际想要添加的目录路径。
永久添加到环境变量
如果你希望添加的路径在每次打开终端时都包含在PATH
中,你需要将路径添加到你的shell配置文件中。
打开配置文件:根据你使用的shell,配置文件可能是
.bashrc
、.zshrc
等。使用文本编辑器打开它,例如:1
nano ~/.bashrc
添加路径:在文件的末尾添加以下行:
1
export PATH=$PATH:/path/to/your/directory
同样,替换
/path/to/your/directory
为你的实际路径。保存并关闭文件:如果你是使用
nano
,可以按Ctrl + O
保存更改,然后按Ctrl + X
退出。使更改生效:为了让更改立即生效,你可以运行以下命令:
1
source ~/.bashrc
或者,你也可以简单地关闭并重新打开终端。
系统范围内的环境变量更改
对于系统范围内的环境变量更改,你可以编辑/etc/profile
或/etc/environment
文件。但是,通常推荐使用用户的shell配置文件,因为/etc/profile
和/etc/environment
会影响到所有用户,而且需要管理员权限来编辑。
打开
/etc/profile
:1
sudo nano /etc/profile
添加路径:在文件的末尾添加
export
命令:1
export PATH=$PATH:/path/to/your/directory
保存并关闭文件:使用
sudo nano
时,保存和关闭方法与普通nano
相同。使更改生效:对于系统范围内的更改,你可能需要重启系统,或者至少注销并重新登录。
请记住,永久添加路径到环境变量时要特别小心,因为错误的路径或语法错误可能会导致系统命令无法找到或执行错误。
命令行工具
cp
排除某些文件夹:
1 | rsync -avr --exclude='path1/to/exclude' --exclude='path2/to/exclude' source destination |
grep
在当前目录下查找:grep -re "find_str"
排除某类文件:grep -re "find_str" --exclude=*.dts
只在某类文件中查找:grep -re "find_str" --include=*.c
不匹配二进制文件:grep -re "find_str" . --binary-files=without-match
如果你想要搜索文件名而不是文件内容,可以使用 --name
选项:grep "search_pattern" --name /path/to/directory
如果你想要排除整个目录,可以使用 --exclude-dir
选项:grep "search_pattern" --exclude-dir="/path/to/exclude" /path/to/directory
scp
单文件传输
上传:
scp local_file user@192.168.1.100:/romte_path/
下载:
scp user@192.168.1.100:/romte_path/remote_file .
多文件传输
上传:
scp file1 file2 user@192.168.1.100:/remote_path
下载:
scp user@192.168.1.100:/romte_path/\{path1/file1,path2/file2\} .
复制整个文件夹
上传:scp -vr file_path user@192.168.1.100:/remote_path
下载:scp -r user@192.168.1.100:/remote_path .
在两个远程主机之间复制文件
scp user@192.168.1.100:/romte_path/remote_file user@192.168.1.101:/romte_path/
使用压缩来加快传输
在文件传输的过程中,我们可以使用压缩文件来加快文件传输.
我们可以使用 C 选项来启用压缩功能,该文件在传输前被压缩,在目的主机上被解压缩。
scp -C user@192.168.1.100:/romte_path/remote_file .
tftp
windows 上免费的 tftp server:TFTP Server TFTPDWIN
一、上传到指定文件夹
1 | tftp -p -l file_or_path target_ip |
二、下载到当前目录
1 | tftp -g -r file_or_path source_ip |
启动服务
tftpd
1 | sudo apt-get install tftpd-hpa |
nfs
1 | sudo apt-get install nfs-kernel-server |
支持V2:
1 | $ sudo cat /proc/fs/nfsd/versions |