当前位置: 首页 > news >正文

Linux之常见的管理命令

目录

1. whoami

2. hostname

3. uname

4. date

5. alias

6. history

7. sudo

8. systemctl

9. ps


1. whoami

  • 作用: 显示出当前有效的用户名称
  • 语法:whoami(选项)
  • 选项:
  1. --help:在线帮助
  2. --version:显示版本信息和退出

场景使用:

  1. 当用户想要查看当前登录系统的用户名时,可以使用whoami指令来显示当前用户的用户名。
  2. 在脚本或程序中,可以使用whoami指令来获取当前用户的用户名,以便进行相应的操作或授权验证。
  3. 在系统管理和维护工作中,可以使用whoami指令来确认当前正在执行命令的用户身份,以确保操作的合法性和安全性。

示例:

[root@localhost ~]# whoami
root

2. hostname

  • 作用: 用于显示和设置系统的主机名称
  • 语法:hostname(选项)(参数)
  • 选项:
  1. -a:显示主机别名
  2. -d:显示DNS域名
  3. -i:显示主机的ip地址

场景使用:

  1. 在系统管理和网络管理中,可以使用hostname指令来查看当前主机的名称。
  2. 当需要配置网络服务或进行网络故障排查时,可以使用hostname指令来查看或设置主机的名称。
  3. 在脚本或程序中,可以使用hostname指令来获取当前主机的名称,以便进行相应的操作或配置。
  4. 在系统管理和维护工作中,可以使用hostname指令来修改主机的名称,以满足特定的需求或规范。

示例:

[root@localhost ~]# hostname -i
::1 127.0.0.1

3. uname

  • 作用: 用于显示当前系统相关信息
  • 语法:uname(选项)
  • 选项:

        -a:详细显示全部的信息

场景使用:

  1. 硬件信息查询:通过uname指令可以查看当前系统的硬件类型,包括处理器架构和计算机类型。
  2. 内核信息查询:可以使用uname指令来获取当前系统的内核名称和版本号,以便进行系统管理和维护工作。
  3. 确认操作系统类型和版本:uname指令可以显示当前操作系统的名称和版本号,帮助用户确认所使用的操作系统类型和版本。
  4. 脚本编程:在编写脚本或程序时,可以使用uname指令来获取系统信息,以便进行相应的操作或配置。
  5. 系统识别和诊断:在系统维护和故障排查过程中,可以使用uname指令来识别系统类型和版本,帮助进行诊断和解决问题。

示例:

[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]#

4. date

  • 作用:显示或设置系统时间与日期
  • 语法:date(选项)(参数)

场景使用:

  1. 显示当前日期和时间:可以使用date指令来查看当前系统的日期和时间。
  2. 设置系统时间:系统管理员可以使用date指令来手动设置系统的日期和时间,以确保系统时间的准确性。
  3. 在脚本或程序中获取时间:在编写脚本或程序时,可以使用date指令来获取当前的日期和时间,以便进行相应的操作或记录时间戳。
  4. 日志记录:在系统管理和维护工作中,可以使用date指令来记录操作日志或事件日志的时间戳。
  5. 定时任务:在定时任务或计划任务中,可以使用date指令来获取当前时间,并根据时间执行相应的任务或操作。
  6. 文件时间戳修改:系统管理员可以使用date指令来修改文件的创建时间或修改时间,以满足特定的需求或要求。

示例:

[root@localhost ~]# date
2024年 01月 24日 星期三 13:04:02 CST

5. alias

  • 作用:设置指令的别名
  • 语法:alias(选项)(参数)
  • 选项:

        -p --显示已经设置的命令别名

unalias 是取消别名命令

场景使用:

  1. 缩短命令:可以使用alias指令将一些常用的长命令或复杂命令定义为简短的别名,以便在命令行中更快地输入和执行。
  2. 添加选项:可以使用alias指令为命令添加一些默认选项,以便在执行命令时自动包含这些选项。
  3. 防止误操作:通过alias指令可以为一些危险的命令添加提示或确认选项,以防止误操作。
  4. 个性化配置:可以根据个人习惯和需求使用alias指令对命令行进行个性化配置,使命令行操作更加高效和便捷。
  5. 简化操作:通过alias指令可以将一系列复杂操作组合成一个简单的别名命令,以简化操作流程。

        总之,alias指令能够帮助用户简化命令行操作,提高工作效率,并且可以根据个人需求对命令行进行个性化定制。

示例:

[root@localhost ~]# alias -p
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@localhost ~]# # 设置别名,重启将失效,永久生效需要在配置文件中配置
[root@localhost ~]# alias vi='vim'

6. history

  • 作用:显示指定数目的指令命令
  • 语法:history(选项)(参数)
  • 选项: -c --清空当前历史命令

场景使用:

  1. 查看命令历史:可以使用history指令来查看在当前会话中执行过的所有命令,以便追溯和查找之前执行的命令。
  2. 重复执行命令:使用history指令可以轻松地找到之前执行过的命令,并且可以通过历史记录中的命令编号来快速重复执行某个命令。
  3. 分析命令使用情况:通过查看命令历史记录,可以分析用户在当前会话中执行过的命令使用情况,以便进行统计和分析。
  4. 恢复误删除的命令:如果用户不小心删除了之前执行的命令,可以通过history指令找回已删除的命令。
  5. 重现操作流程:在进行复杂的操作流程时,可以使用history指令来查看之前的操作步骤,以便重新执行或调整操作流程。

        总之,history指令可以帮助用户追溯和查找之前执行的命令,提高命令行操作的效率,并且可以帮助用户分析和统计命令使用情况。

示例:

[root@localhost ~]# history 2064  pwd65  su lisen66  clear67  whoami68  hostname -i69  hostname -d70  hostname -a71  uname -a72  date73  user74  users75  uptime76  alias77  alias -p78  alias vi = vim79  alias vi = 'vim'80  clear81  alias vi='vim'82  chkconfig  --list  83  history 20

7. sudo

  • 作用:sudo命令是Linux或者Unix系统中,允许普通用户可以使用超级管理员权限的工具,比如执行单个命令和应用程序,而无需切换到管理员账户
  • 语法:-u username 以指定的用户身份执行命令,默认是root用户

场景使用:

  1. 管理系统:在管理和维护Linux系统时,需要执行一些需要超级用户权限的操作,如安装软件、修改系统配置文件、管理服务等,这时可以使用sudo指令来暂时获取root权限执行相应的命令。
  2. 安装和更新软件:在安装新软件或更新系统时,需要使用sudo权限执行包管理器(如apt、yum等)来安装或更新软件包。
  3. 管理用户和文件权限:对于一些需要更改用户账户、修改文件权限或者访问受限资源的操作,需要使用sudo权限来执行。
  4. 管理网络配置:在修改网络配置、启停网络服务、查看网络状态时,可能需要使用sudo权限执行相关的网络管理命令。
  5. 管理系统日志:查看系统日志、清理日志文件等操作通常需要使用sudo权限来执行。
  6. 运行特定命令:在某些情况下,为了安全起见,系统管理员可能希望限制普通用户对某些特定命令的执行权限,这时可以使用sudo来授权特定的命令给特定的用户。

        总之,sudo指令可以帮助系统管理员在保证系统安全的前提下,以超级用户权限执行特定的命令,从而完成需要特权的系统管理任务。

示例:

sudo -u root ls #以root用户的身份运行ls命令sudo -g office free #以office用户执行free命令

8. systemctl

作用:使用systemctl命令可以管理系统服务,如启动、停止、重启服务等

场景使用:

  1. 启动和停止服务:使用systemctl可以启动和停止系统中的各种服务,例如网络服务、数据库服务、Web服务器等。
  2. 管理系统单元:systemd使用单元(unit)来描述系统中的各种资源,包括服务、挂载点、设备等。可以使用systemctl来管理这些单元,包括启动、停止、重启、启用、禁用等操作。
  3. 查看服务状态:通过systemctl可以查看当前系统中各个服务的状态,包括运行状态、启动失败信息、最近一次的运行时间等。
  4. 管理系统启动:systemd负责系统的启动和初始化过程,可以使用systemctl来管理启动相关的单元,包括设置默认启动目标、重启系统等。
  5. 查看系统日志:systemd可以记录系统的日志信息,使用systemctl可以查看和管理这些日志信息。
  6. 管理用户会话:systemd可以管理用户会话(user session),通过systemctl可以管理用户登录后的会话单元,包括启动、停止用户会话等操作。

        总之,systemctl指令是用于管理systemd系统和服务的强大工具,可以用于管理系统启动、服务管理、日志查看等各种操作,是Linux系统管理中不可或缺的命令行工具。

示例:

systemctl start sshd 

9. ps

  • 作用:命令用于显示当前进程的状态,类似于 windows 的任务管理器
  • 语法:ps [options] [--help]
  1. -A 列出所有的进程

  2. -w 显示加宽可以显示较多的资讯

  3. -au 显示较详细的资讯

  4. -aux 显示所有包含其他使用者的进程

场景使用:

  1. 查看系统中的进程:使用ps指令可以列出当前系统中正在运行的进程,包括进程的PID(进程ID)、运行状态、占用的资源等信息。
  2. 查找特定进程:可以使用ps指令结合其他参数来查找特定的进程,例如根据进程名、用户、进程状态等来过滤和查找进程。
  3. 监控系统资源占用:通过ps指令可以查看系统中进程占用的资源情况,包括CPU占用、内存占用等,有助于监控系统资源的使用情况。
  4. 结合其他命令:ps指令可以结合其他命令(例如grep、awk等)来进行更复杂的进程查找和分析,例如查找特定用户的进程、按CPU占用排序等。
  5. 分析进程间关系:ps指令可以显示进程的父子关系,有助于分析进程之间的关系和进程树结构。

        总之,ps指令是用于查看和分析系统中进程信息的重要工具,可以帮助用户了解系统中的进程情况,监控系统资源使用情况,以及进行进程相关的分析和管理。

示例:

ps -ef

相关文章:

  • java日志框架总结(三 、Log4j日志框架)
  • SQL注入-sqli-labs-master第一关
  • 微信生成带参数二维码(用户id), 扫码可获取用户id
  • 免费开源的微信小程序源码、小游戏源码精选70套!
  • Python一行命令搭建HTTP服务器并外网访问 - 内网穿透
  • Unity——八叉树的原理与实现
  • 算法每日一题: 最大合金数 | 二分
  • 概念抽取:构建认知基础的关键步骤
  • 面试经典 150 题 ---- 移除元素
  • 方玲老师谈中国传统祭祖深远的意义
  • 计算机网络之NAT
  • arm 汇编调用C
  • Go黑帽子(第二章)
  • Go语言常用标准库fmt、格式化占位符、获取输入
  • UE5在VisualStudio升级后产生C++无法编译的问题
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • flutter的key在widget list的作用以及必要性
  • github指令
  • JSONP原理
  • SAP云平台里Global Account和Sub Account的关系
  • Vue2.0 实现互斥
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 大型网站性能监测、分析与优化常见问题QA
  • 简析gRPC client 连接管理
  • 普通函数和构造函数的区别
  • 前端技术周刊 2019-01-14:客户端存储
  • 前端设计模式
  • 如何选择开源的机器学习框架?
  • 入口文件开始,分析Vue源码实现
  • 想写好前端,先练好内功
  • 自定义函数
  • 从如何停掉 Promise 链说起
  • 第二十章:异步和文件I/O.(二十三)
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • (2.2w字)前端单元测试之Jest详解篇
  • (8)STL算法之替换
  • (Matlab)使用竞争神经网络实现数据聚类
  • (备忘)Java Map 遍历
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (十一)手动添加用户和文件的特殊权限
  • (万字长文)Spring的核心知识尽揽其中
  • (转)如何上传第三方jar包至Maven私服让maven项目可以使用第三方jar包
  • ***测试-HTTP方法
  • *2 echo、printf、mkdir命令的应用
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET Standard、.NET Framework 、.NET Core三者的关系与区别?
  • .net 流——流的类型体系简单介绍
  • .net 受管制代码
  • .NET委托:一个关于C#的睡前故事
  • /etc/shadow字段详解
  • /var/log/cvslog 太大
  • @Responsebody与@RequestBody