首页 > 系统相关 >Linux系统常用命令的使用

Linux系统常用命令的使用

时间:2024-03-13 13:02:16浏览次数:26  
标签:文件 常用命令 系统 Linux 进程 home txt root localhost

前言

思维导图:

在这里我参考的是《Linux系统管理基础项目教程(CentOS7.2)微课版》
其中内容只是基础的第一部分——Linux系统常用命令
在这里插入图片描述


文章目录


1. linux系统常用命令

Linux操作系统是一个强大的开源操作系统,其命令行界面(CLI)通过shell(如bash、zsh等)提供了丰富的命令集来执行各种任务。

Linux操作系统的命令格式一般为:

命令 [参数] [选项] [文件名]

1.1 目录管理

1.1.1 pwd(present working directory)

  • 显示当前工作目录。

[root@localhost redhat]# pwd
/home/redhat

1.1.2 cd

  • 改变当前工作目录。例如 cd /home/进入到 /home/ 目录。

[root@localhost home]# cd /home/
[root@localhost home]#

1.1.3 ls

  • 列出当前目录下的文件和子目录。可选参数 -l 以长格式列出, -a 包括隐藏文件。

[root@localhost home]# ls
redhat

1.1.4 mkdir

  • 创建新目录。例如 mkdir newdir 创建名为 newdir 的新目录。

[root@localhost home]# mkdir newdir
[root@localhost home]# ls
newdir redhat

1.1.5 rmdir

  • 删除空目录。例如 rmdir newdir 删除名为 newdir 的空目录。

[root@localhost home]# rmdir newdir
[root@localhost home]# ls
redhat

1.2 文件管理

1.2.1 touch

  • 创建新文件或更新已有文件的访问和修改时间戳。

创建文件:
[root@localhost home]# touch newfile.txt

更新文件时间戳:
[root@localhost home]#touch existingfile.log

1.2.2 cp

  • 复制文件或目录。例如:

复制单个文件
[root@localhost home]# cp source.txt destination.txt
这将会把名为 source.txt 的文件复制到同一目录下,新文件名为destination.txt

将复制的文件粘贴到路径下的文件夹
cp source.txt /path/to/destination/directory/
这样会将 source.txt 文件复制到指定的目录下,保持原有的文件名

1.2.3 mv

  • 移动或重命名文件或目录。例如 :

重命名文件:
[root@localhost home]#mv old_filename new_filename

移动文件:
[root@localhost home]#mv file.txt /path/to/another/directory/

1.2.4 rm

  • 删除文件或目录。需谨慎使用,rm -rf dir 可以递归强制删除目录(慎用)。

强制删除文件,无提示
rm -f file.txt

交互式删除文件
rm - i file.txt

1.2.5 cat

  • 连接并显示文件内容。例如 cat file.txt 输出 file.txt 的内容。

显示文件内容:
[root@localhost home]# cat file.txt

合并多个文件:
[root@localhost home]# cat file1.txt file2.txt > combined.txt
此命令将 file1.txt 和 file2.txt 文件的内容合并,并将结果输出到新的文件 combined.txt

创建文件:
[root@localhost home]# cat > newfile.txt
运行此命令后,你可以开始在终端中输入内容,当输入完成后按 Ctrl+D 结束输入,这些内容会被写入到 newfile.txt 文件中

追加内容到末尾:
[root@localhost home]# echo “Some text” >> existingfile.txt

虽然这不是cat命令的直接用法,但这里使用了 echo 和 >> 符号来追加内容到文件末尾,这类似于 cat 命令的追加操作,即 cat some_text.txt >> existingfile.txt

1.2.6 tac

  • 与 cat 类似,但按行逆序输出文件内容。

在Linux操作系统中,tac 命令用于反向(颠倒顺序)地逐行显示文件内容,即从文件的尾部开始向前显示每一行。它与 cat 命令的功能相反,cat 是从头到尾连续显示文件内容

1.2.7 more 和 less

  • 分页查看文件内容,less 更加灵活,支持前后翻页。

空格键(Space)或回车键(Enter):向下翻动一页内容。
b 键:向上翻动一页内容(在more中不常用,因为默认情况下more仅支持向下翻页)。
q 键:退出 more。
/搜索词:向下搜索匹配的字符串。
?搜索词:向上搜索匹配的字符串(more本身不支持此功能,但一些实现可能添加了该功能)。

空格键(Space)或回车键(Enter):向下滚动一行或一页内容。
PgDn 或 j 键:向下滚动一行或一页。
PgUp 或 k 键:向上滚动一行或一页。
b 键:向上翻页。
G 键:跳转到文件尾部。
g 键:跳转到文件头部。
/搜索词:向下搜索匹配的字符串,按n继续找到下一个匹配项,按N反向查找上一个匹配项。
?搜索词:向上搜索匹配的字符串。
q 键:退出 less。

1.2.8 head 和 tail

  • 分别显示文件开头和结尾的部分行,默认显示前10行和后10行,可通过参数指定行数。

head readme.md 会显示文件 readme.md 开头的若干行内容, -n [行数]:指定显示文件的前几行,默认为10行

[root@localhost home]# head -n 5 readme.md

显示 README.md 文件的前5行

tail指定行数显示:
[root@localhost home]# tail -n 10 logfile.log

1.3 查找与搜索

1.3.1 find

  • 在指定目录下查找满足条件的文件。

按文件名查找:
[root@localhost home]# find /path/to/search -name “filename”

按文件类型查找
查找当前目录及其子目录下的所有普通文件
[root@localhost home]# find . -type f

查找当前目录及其子目录下的所有目录
[root@localhost home]# find . -type d

按文件大小查找
#查找大于10MB的文件
[root@localhost home]# find . -size +10M
#查找小于10MB的文件
[root@localhost home]# find . -size -10M

1.3.2 grep

  • 在文件中搜索匹配的文本模式。

1.4 压缩与解压

1.4.1 tar

  1. 不压缩的归档文件:

tar -cvf archive_name.tar directory_or_file(s)

  • c 表示创建一个新的归档文件。
  • v 选项是可选的,用于输出详细信息,显示正在处理哪些文件。
  • f 指定归档文件的名字。

示例:将目录 mydir 打包成 mydir.tar:
tar -cvf mydir.tar mydir

  1. 压缩归档文件:

使用 gzip 压缩:
tar -czvf archive_name.tar.gz directory_or_file(s)
使用 bzip2 压缩:
tar -cjvf archive_name.tar.bz2 directory_or_file(s)
使用 xz 压缩:
tar -cJvf archive_name.tar.xz directory_or_file(s)

1.5 系统管理

1.5.1 man

man 参数 命令或者配置文件

例如,查看cp的用法:
[root@localhost home]# man cp

1.5.2 shutdown
在Linux系统中,shutdown 命令是一个非常重要的系统管理工具,它允许系统管理员计划性地关闭或重启计算机系统。以下是shutdown命令的一些基本使用方法及其参数说明:

shutdown [选项] [时间] [警告信息]

选项说明:

  • -t 秒:设置关机或重启前的延迟时间,单位为秒。
  • -r:重新启动系统。在指定的时间后,系统将会先关闭所有服务然后重启。
  • -h:关闭系统并停止电源,即关机。这是最常用的关机选项。
  • -k:并不真正执行关机或重启操作,而是发送一个警告消息给所有在线用户。
  • -c:取消先前已经计划的关机或重启操作。
  • -f:在重启时不进行文件系统的检查(fsck)。
  • -F:在重启时强制进行文件系统的检查(fsck)。
  • -n:不调用init或systemd进行关机操作,而是由shutdown自身尝试进行关机。
  • -Wall-w:向所有已登录的用户发送警告消息。

时间参数

  • 可以指定具体的分钟数,如 shutdown -h +5 "System will shut down in 5 minutes" 表示5分钟后关机,并附带一条警告信息。
  • 可以指定具体的时间,如 shutdown -h 23:30 表示在23点30分时关机。
  • 使用 “+m” 形式指定分钟数,则是相对于当前时间的延后关机或重启。

警告信息

在时间参数后面可以跟上一句消息,这将在关机或重启前显示给所有用户,作为提醒信息。

例如:

  • 即刻关机:sudo shutdown -h now
  • 10分钟后关机,并发送一条提示消息:sudo shutdown -h +10 "System maintenance scheduled"
  • 取消预定的关机或重启:sudo shutdown -c
  • 计划在凌晨3点重启系统:sudo shutdown -r 03:00

1.5.3 reboot

在Linux操作系统中,reboot 命令用于重新启动(重启)计算机。这个命令使得系统执行一系列必要的操作来安全地关闭系统进程,同步文件系统,然后重新初始化硬件以启动新的操作系统实例。

以下是 reboot 命令的一些基本使用方法和选项:

基本用法

sudo reboot

使用上述命令时,系统管理员权限(通常通过 sudo 命令获取)是必需的,因为它涉及到对系统核心级别的控制。

选项

  • -n--no-sync: 不等待文件系统和其他资源同步就重启。这是一个非标准选项,可能会导致数据丢失。

  • -w--warm: 执行模拟重启(仅发出信号,实际不重启)。系统会执行所有正常的重启前清理工作,但不会真的重启。

  • -f--force:强制重启,即使系统处于多用户模式或者某些系统资源未能正常关闭也强制重启。

  • -d:类似于 -n,跳过sync步骤,而且在重启时不记录wtmp文件,即此次重启操作不会被记录在系统日志中。

  • -i:在重启之前发送SIGINT信号给init程序,这样可以让init尝试关闭所有的服务和守护进程。

  • -t 秒数:延迟指定的秒数后才进行重启。

例如,如果你想在30秒后强制重启系统,可以使用:

sudo reboot -f -t 30

请注意,使用 -f 或其他可能导致数据不一致或无法正常关闭服务的选项应当谨慎,因为这可能增加数据损坏的风险。在大多数情况下,除非遇到特殊情况,否则推荐使用默认的、更为安全的方式重启系统。

1.5.4 su

在Linux系统中,su(意为“switch user”,即切换用户)命令主要用于切换当前登录用户的权限至其他用户,通常用于在不同用户身份间切换,特别是从普通用户切换到超级用户(root)或反之。

以下是su命令的基本使用方法及其选项:

su [选项] [用户名]
  • 基本用法

    • 不带任何选项和用户名运行su,默认情况下会尝试切换到超级用户(root):
      su
      
      运行后会提示输入目标用户的密码(在这种情况下是root用户的密码)。
  • 切换到指定用户

    • 若要切换到名为username的普通用户,可以这样操作:
      su username
      
      同样,将会要求输入username用户的密码。
  • 选项说明

    • -l--login:模拟完整的登录shell,不仅切换用户,还会加载目标用户的环境变量(如PATH、HOME等)和启动文件(如.bash_profile.bashrc)。

      su -l username
      
    • -c command--command=command:以指定用户身份执行单一命令,执行完毕后自动回到原始用户身份,不需要登录shell。

      su -c 'whoami' username
      
    • -m, -p--preserve-environment:切换用户时保留当前环境变量,而不是加载新用户的环境设置。

    • -s, --shell:指定要使用的shell程序。

    • -f--fast:适用于csh或tcsh shells,忽略用户的个人初始化文件。

1.6 进程管理

1.6.1 ps

ps命令用于显示当前系统中进程的状态。基本用法如下:

ps [选项]
  • 常见选项包括:
    • -aux-ef:显示所有用户的详细进程信息,包括守护进程(daemon)。
    • -u [用户名]:显示指定用户的进程。
    • -c:仅显示命令名和命令行参数。
    • -p [进程ID]:仅显示指定进程ID的进程信息。

示例:

# 显示所有活动进程
ps aux

# 查看特定用户(比如:user1)的进程
ps -u user1

# 查看特定进程ID(比如:12345)的进程信息
ps -p 12345

1.6.2 kill

kill命令用于向指定进程发送信号,从而终止或控制进程的行为。基本用法如下:

kill [-信号] [进程ID]
  • 常见信号包括:
    • -1 (SIGHUP):重新加载配置文件,很多服务进程会重启自身。
    • -2 (SIGINT):类似于按Ctrl+C,中断进程。
    • -9 (SIGKILL):强制终止进程,不可阻塞,最为严厉的结束信号,一般情况应避免直接使用。
    • -15 (SIGTERM):正常、温和地请求进程终止,这是首选的结束进程的方式,给进程机会清理资源。

示例:

# 发送SIGTERM信号结束进程ID为12345的进程
kill 12345

# 强制结束进程ID为67890的进程
kill -9 67890

为了找出要终止的进程ID,通常先用ps命令配合grep等工具筛选出所需进程,例如:

# 查找名为myprogram的进程并获取其PID
ps -ef | grep myprogram
# 根据输出找到对应的进程ID,然后用kill命令结束该进程
kill -15 <进程ID>

另外,kill命令还可以配合jobs或pgrep命令来结束作业控制下的后台进程或按名称查找进程。例如:

# 终止后台作业中的第一个进程
kill %1

# 根据进程名结束进程
pgrep -f "myprogram" | xargs kill -15

在使用这些命令时,务必小心操作,尤其是kill -9,因为它会导致进程立即终止,没有机会进行资源清理或保存数据。

标签:文件,常用命令,系统,Linux,进程,home,txt,root,localhost
From: https://blog.csdn.net/weixin_74994771/article/details/136673510

相关文章

  • 一个月内通过软考高级系统架构设计师,如何复习?进度安排、备考资料买哪些?附22条备考经验
    前言        楼主2022年下半年参加计算机软考,高级系统架构师的考试;复习时间:2个月(在职复习,真正有效时间<1个月);以下是楼主分数情况:综合知识45分;案例分析56分;论文58分。论文和案例均高分通过。    本文分享楼主复习高级系统架构师的考试的经验,备考建议,分享复......
  • 基于springboot的车辆充电桩管理系统(系统+数据库+文档)
    **......
  • 基于SpringBoot的CSGO赛事管理系统(程序+数据库+文档)
    **......
  • 推荐系统研究-笔记
    推荐系统研究-笔记介绍:推荐系统简介:维基百科对推荐系统的解释:推荐系统是一种信息过滤系统,用于预测用户对物品的“评分”或“偏好”。推荐的对象包括:电影、音乐、新闻、书籍、学术论文、搜索查询、分众分类、以及其他产品。推荐系统首先收集用户的历史行为数据,然后通过预......
  • 实验案例:使用Windows 10桌面系统
    1、实验环境      BDON公司刚刚招聘了一位新入职员工小张。部门经理要求系统管理员带小张快速地熟悉公司环境以尽快上手工作,系统管理员为小张的计算机安装了Windows1o操作系统以后,需要小张进一步熟悉公司的Windows10桌面环境及使用系统的基本操作,以便更好地实......
  • springboot基于JavaWeb的兽医站管理系统的设计与实现
    摘要随着世界经济信息化、全球化的到来和互联网的飞速发展,推动了各行业的改革。若想达到安全,快捷的目的,就需要拥有信息化的组织和管理模式,建立一套合理、动态的、交互友好的、高效的兽医站管理系统。当前的信息管理存在工作效率低,工作繁杂等问题,基于信息化的兽医站管理目......
  • springboot基于Java的公共交通查询系统的设计与实现
    摘要近年来互联网络的迅猛发展和电子终端设备的普及,赋予了各行业充足的发展空间。公共交通查询系统相比于传统信息技术,时效性是它最大的特色,已经在电子娱乐、经济等中发挥着举足轻重的作用。2019年疫情的爆发,更是短时间内迅速扩大了线上管理系统的规模。尽管服务行业已经......
  • springboot基于Java的远程就医系统
    摘要随着网络科技的不断发展以及人们经济水平的逐步提高,网络技术如今已成为人们生活中不可缺少的一部分,而信息管理系统是通过计算机技术,针对用户需求开发与设计,该技术尤其在各行业领域发挥了巨大的作用,有效地促进了远程就医的发展。然而,由于用户量和需求量的增加,信息过载等......
  • 开启或关闭SELinux
    SELinux简介安全增强型Linux(SELinux)是一种采用安全架构的 Linux®系统,它能够让管理员更好地管控哪些人可以访问系统。它最初是作为 Linux内核的一系列补丁,由美国国家安全局(NSA)利用Linux安全模块(LSM)开发而成。  通过严格的访问控制机制增强系统安全性。一般情况下,建议......
  • Python房屋信息可视化及价格预测系统设计与实现
    项目运行需要先安装Python的相关依赖:requests,pymysql,Django==3.2.8,jieba,scikits_learn,pandas第一步:创建数据库第二步:执行SQL语句,.sql文件,运行该文件中的SQL语句第三步:修改源代码中的settings.py文件,改成自己的mysql数据库用户名和密码第四步:运行命令:pythonmanage.p......