Linux命令补充
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。date:显示和设置系统日期时间,支持自定义格式和时间戳转换。cal:查看日历,支持指定月份或年份的显示。history:查看和管理命令历史记录,方便快速调用过往命令。scp:通过SSH安全传输文件或目录,保障数据安全。ssh:远程登录到其他计算机,支持端口指定和远程命令执行。n
文章目录
前言
本文旨在介绍 Linux 系统中一些常用且实用的命令,涵盖日期时间管理、文件传输、远程连接、系统监控等多个方面。
一、date
日期
1.1 功能:
date
命令用于显示当前的系统日期和时间,可以指定不同的输出格式,或用它来设置系统的日期和时间。
1.2 详细案例:
-
显示当前系统时间:
date
-
自定义时间格式:
date "+%Y-%m-%d %H:%M:%S"
输出:
2025-08-14 16:24:51
-
显示当前时间的时间戳(从1970年1月1日以来的秒数):
date +%s
-
设置系统时间:
sudo date +%Y-%m-%d -s "2025-08-15"
-
同步网络时间:
sudo ntpdate ntp.aliyun.com
二、cal
展示日历
2.1 功能:
cal
命令用来显示当前月份或指定月份的日历。可以方便地查看日期。
2.2 详细案例:
-
查看当前月份的日历:
cal
-
查看指定年份和月份的日历:
cal 9 2025
-
显示一整年的日历:
cal -y 2025
三、 history
运行历史
3.1 功能:
history
命令用来查看当前用户的历史命令。这个命令可以帮助你快速找到之前运行的命令。
3.2 详细案例:
-
查看命令历史:
history
-
查看历史命令中的特定条目:
history | grep "mkdir" # 过滤出历史记录中所有包含 `mkdir` 的命令。
-
执行历史命令:
使用历史命令编号执行:!555 # 执行编号为555的命令
四、 scp
加密传输
4.1 功能:
scp
命令用于通过 SSH 协议在本地和远程服务器之间安全地复制文件或目录。它加密了数据传输,因此更加安全。
4.2 详细案例:
-
将本地文件复制到远程服务器:
scp /var/log/test.log aike@192.168.10.122:/C:/Users/aike/Desktop/bak 命令 本地文件 远程主机用户名@IP地址或主机名 远程主机路径
-
将本地目录复制到远程服务器:
scp -r /home/test3 aike@192.168.10.122:/C:/User/aike/Desktop/bak
-
将远程文件复制到本地:
scp aike@192.168.10.122:/C:/Users/aike/Desktop/bak/test.log /home/aike/test
-
从远程服务器复制整个目录到本地:
scp -r user@remote:/remote/dir /local/dir/
五、 ssh
远程连接
5.1 功能:
ssh
(Secure Shell)命令用于通过加密连接远程登录到计算机。它使得你可以安全地访问远程机器并执行命令。
5.2 详细案例:
-
登录到远程服务器:
ssh user@hostname
这会连接到远程主机
hostname
上的user
用户。 -
使用不同端口登录:
ssh -p 800 root@192.168.10.121#修改/etc/ssh/sshd_config中的默认端口
默认端口22,因是默认,易被暴力破解,使用其余端口更神秘。
通过 -p
选项指定端口,默认端口是 22。
-
通过 SSH 执行远程命令:
ssh -p 800 root@192.168.10.121 'ls -l /home/aike' #由于将默认开放端口改为800,所以得加上`-p 800`
这会在远程主机上执行
ls -l /home/aike
命令,列出指定目录的内容。
六. nohup
后台运行并记录
6.1 功能:
nohup
命令用于让某个进程在后台运行,并且使其在关闭终端后依然保持运行。nohup
会将标准输出和错误输出重定向到 nohup.out
文件中。
6.2 详细案例:
-
让脚本在后台运行:
nohup python script.py &
这会使
script.py
脚本在后台运行,即使终端关闭,脚本也会继续执行。 -
查看后台任务的输出:
tail -f nohup.out
七、 reboot
重启
7.1 功能:
reboot
命令用于重启计算机。在一些场景中需要重新启动计算机以应用更新或其他操作。
7.2 详细案例:
-
重启计算机:
sudo reboot
这会立即重启计算机。
-
重启并延迟几分钟:
sudo reboot +5
这会在5分钟后重启计算机。
八、 shutdown
关机
8.1 功能:
shutdown
命令用于关闭计算机。它可以指定一个延迟时间,或者立即关闭系统。
8.2 详细案例:
-
立即关闭系统:
sudo shutdown -h now
这会立即关闭计算机。
-
延迟关闭系统:
sudo shutdown -h +10
这会在10分钟后关闭系统。
-
重启系统:
sudo shutdown -r now
这会立即重启计算机。
九、 free
显示内存使用情况
用于显示系统的内存使用情况,包括物理内存(RAM)、交换空间(swap)和内核缓冲区。它是 Linux 系统中非常常用的一个命令,用于查看内存的总体状态。
9.1 命令功能
free
命令提供以下几个主要信息:
- 总内存:物理内存的总量。
- 已用内存:已经被系统或应用程序使用的内存。
- 空闲内存:没有被使用的内存。
- 共享内存:不同进程之间共享的内存空间。
- 缓存内存:操作系统用作缓存的数据。
- 交换内存(Swap):当物理内存不足时,系统使用磁盘上的空间作为虚拟内存(交换空间)。
9.2 基本命令格式
free [options]
9.3 常用选项
-h
:以人类可读的方式显示(自动选择合适的单位,如 KB, MB, GB)。-m
:以 MB 为单位显示内存。-g
:以 GB 为单位显示内存。-t
:显示内存的总和(即总内存 + 总交换空间)。-s
:以秒为单位指定显示刷新时间间隔。-l
:显示低内存和高内存的详细信息。
9.4 基本用法
9.4.1 显示当前内存使用情况:
free
输出示例:
解释:
total
:总内存。used
:已用内存。free
:空闲内存。shared
:被多个进程共享的内存。buff/cache
:系统缓冲区和缓存使用的内存。available
:可以用来启动新应用程序的内存(考虑了缓存和缓冲的回收)。
9.4.2 以人类可读的格式显示内存:
free -h
输出示例:
9.4.3 显示内存使用情况(以 MB 为单位):
free -m
输出示例:
9.4.4 显示内存和交换空间的总和:
free -t
输出示例:
9.4.5 每 5 秒刷新一次显示内存使用情况:
free -s 5
9.4.6 输出字段解释
free
命令的输出通常包含两行:一行显示内存(Mem),一行显示交换空间(Swap)。
- Mem 行:
total
:总物理内存(RAM)。used
:已用内存(包括缓存、共享内存、应用程序使用的内存等)。free
:空闲内存。shared
:共享内存,指多个进程之间共享的内存。buff/cache
:缓冲区和缓存所占用的内存。系统会使用这部分内存来缓存磁盘数据,以加快访问速度。available
:系统可用的内存。这个值并不是单纯的空闲内存,而是指经过系统缓存和缓冲区回收后的可以使用的内存。
- Swap 行:
total
:总交换空间大小。used
:已使用的交换空间。free
:剩余的交换空间。
9.4.7 典型应用场景
- 检查内存使用情况:
你可以通过free
命令快速了解当前系统的内存使用情况,帮助你判断是否有内存不足的情况,或者是否需要调整交换空间。 - 监控内存和交换空间使用情况:
如果系统经常使用大量的交换空间,可能意味着系统内存不足,可能需要增加物理内存或调整系统配置。 - 检查缓冲区和缓存的影响:
通过buff/cache
和available
字段,你可以了解系统缓存占用了多少内存,以及哪些内存是可以被回收利用的。
9.4.8 高级技巧
-
查看内存使用趋势:
如果你需要实时监控内存使用情况并保存到文件中,可以结合free
和watch
命令:watch -n 1 free -h
这会每秒刷新一次显示内存使用情况。
-
使用
free
监控系统健康状态:- 监控内存是否充足。
- 判断是否有大量的缓存内存导致可用内存减少。
- 如果交换空间使用量较大,考虑优化内存使用或增加物理内存。
总结
本文介绍了Linux系统中常用的几个命令及其功能,包括:
date
:显示和设置系统日期时间,支持自定义格式和时间戳转换。cal
:查看日历,支持指定月份或年份的显示。history
:查看和管理命令历史记录,方便快速调用过往命令。scp
:通过SSH安全传输文件或目录,保障数据安全。ssh
:远程登录到其他计算机,支持端口指定和远程命令执行。nohup
:让进程在后台持续运行,即使终端关闭也不中断。reboot
和shutdown
:用于重启或关闭系统,支持延迟操作。free
:查看系统内存和交换空间的使用情况,帮助监控系统资源。
这些命令是Linux系统管理和日常操作中的基础工具,熟练掌握它们可以显著提升工作效率。无论是查看时间、管理进程,还是进行远程操作,这些命令都能为你提供强大的支持。希望本文的内容能够帮助你更好地理解和使用这些命令,为你的学习和工作带来便利。
最后,希望大家多多实践,夯实基础,聚沙成塔,与君共勉之!
更多推荐
所有评论(0)