首页 > 系统相关 >2.2 Shell命令语言大全(小白也能看懂!)

2.2 Shell命令语言大全(小白也能看懂!)

时间:2024-09-10 20:25:34浏览次数:13  
标签:脚本 Shell name echo 命令 能看懂 file 2.2

文章目录


2.2.1 Shell简介

Shell 是一种命令行解释器,它提供了用户与操作系统内核之间的接口,允许用户通过输入命令来执行各种操作。Shell 可以是命令行界面(CLI),也可以是图形用户界面(GUI)的一部分。以下是 Shell 的一些简介:

  1. 命令行界面(CLI):Shell 最常见的形式是命令行界面,用户通过键盘输入命令,Shell 解释并执行这些命令。

  2. 脚本语言:Shell 脚本是一种脚本语言,允许用户编写一系列的命令,这些命令可以自动执行,用于自动化任务。

  3. 交互式和非交互式:Shell 可以是交互式的,允许用户实时输入命令;也可以是非交互式的,用于执行预先编写好的脚本。

  4. 多种 Shell:存在多种 Shell,如 Bourne Shell(sh)、Bash(Bourne Again SHell)、C Shell(csh)、Korn Shell(ksh)、Z Shell(zsh)等,每种 Shell 都有自己的特点和语法。

  5. 环境变量:Shell 允许用户设置环境变量,这些变量可以影响程序的运行环境。

  6. 管道和重定向:Shell 提供了管道(|)和重定向(>, >>, <)等操作符,允许用户将一个命令的输出作为另一个命令的输入,或者将输出重定向到文件。

  7. 文件操作:Shell 提供了多种命令来操作文件和目录,如 ls、cd、cp、mv、rm 等。

  8. 文本处理:Shell 内置了一些文本处理工具,如 grep、sed、awk 等,用于文本搜索、替换和报告。

  9. 网络通信:Shell 提供了网络通信命令,如 ping、ssh、scp 等,用于网络测试、远程登录和文件传输。

  10. 权限管理:Shell 允许用户通过命令如 chmod、chown 等来管理文件和目录的权限。

  11. 进程管理:Shell 提供了命令如 ps、top、kill 等,用于查看和管理正在运行的进程。

  12. 包管理:在类 Unix 系统中,Shell 通常与包管理器(如 apt、yum、dnf、brew 等)结合使用,用于软件的安装、更新和卸载。

2.2.2 Shell命令

Shell命令是用户与操作系统交互的文本指令,通过Shell命令,用户可以执行各种操作,如文件管理、程序运行、系统配置等。以下是一些基本的Shell命令:

  1. ls:列出目录内容。

    ls
    ls -l (详细列出目录内容)
    
  2. cd:改变当前目录。

    cd /path/to/directory
    
  3. pwd:打印当前工作目录的路径。

    pwd
    
  4. mkdir:创建新目录。

    mkdir new_directory
    
  5. rmdir:删除空目录。

    rmdir directory_name
    
  6. cp:复制文件或目录。

    cp source_file destination_file
    
  7. mv:移动或重命名文件/目录。

    mv source_file destination_file
    
  8. rm:删除文件或目录。

    rm file_name
    
  9. touch:创建新文件或更新现有文件的时间戳。

    touch file_name
    
  10. cat:查看文件内容或合并文件。

    cat file_name
    
  11. echo:输出文本字符串。

    echo "Hello, World!"
    
  12. grep:搜索文本文件中匹配正则表达式的行。

    grep "pattern" file_name
    
  13. find:在目录树中搜索文件。

    find /path/to/search -name file_name
    
  14. chmod:更改文件或目录的权限。

    chmod 755 file_name
    
  15. chown:更改文件或目录的所有者。

    chown user file_name
    
  16. tar:打包和压缩文件。

    tar -cvf archive_name.tar /path/to/directory
    
  17. grep:搜索文件中的文本模式。

    grep "pattern" file_name
    
  18. sed:流编辑器,用于处理文本。

    sed 's/old/new/g' file_name
    
  19. awk:文本处理工具,用于模式扫描和处理。

    awk '条件 {动作}' file_name
    
  20. man:查看命令的手册页。

    man ls
    
  • 常见Sheell命令
    在这里插入图片描述

2.2.3 Shell脚本

Shell脚本是一系列在Shell中执行的命令的集合,通常用于自动化任务。以下是创建和运行Shell脚本的基本步骤:

  1. 创建脚本文件
    打开文本编辑器,创建一个新的文本文件,比如叫做script.sh

  2. 添加Shebang行
    在脚本的第一行添加Shebang(#!),后面跟Shell的路径,这告诉系统使用哪个解释器来执行脚本。

    #!/bin/bash
    
  3. 编写命令
    在Shebang行下面添加你想要自动执行的命令。

    #!/bin/bash
    echo "Hello, World!"
    ls -l
    
  4. 保存脚本
    保存文件,并确保文件扩展名为.sh

  5. 赋予执行权限
    使用chmod命令给脚本文件添加执行权限。

    chmod +x script.sh
    
  6. 执行脚本
    你可以通过以下两种方式之一来执行脚本:

    • 作为可执行程序运行:
      ./script.sh
      
    • 作为解释器参数运行:
      bash script.sh
      
  7. 编写复杂脚本
    你可以编写更复杂的脚本,包括条件语句、循环、函数等。

    #!/bin/bash
    
    # 定义一个函数
    function greet {
        echo "Hello, $1!"
    }
    
    # 循环遍历列表
    for user in Alice Bob Charlie; do
        greet $user
    done
    
    # 条件语句
    if [ -f "somefile.txt" ]; then
        echo "File exists."
    else
        echo "File does not exist."
    fi
    
  8. 使用变量
    在脚本中使用变量来存储和操作数据。

    #!/bin/bash
    my_variable="Hello, World!"
    echo $my_variable
    
  9. 读取用户输入
    脚本可以读取用户的输入作为参数或直接从命令行读取。

    #!/bin/bash
    echo "Please enter your name:"
    read name
    echo "Hello, $name!"
    
  10. 调试脚本
    如果脚本没有按预期工作,你可以使用set -x来启用调试模式,这将在执行每条命令前打印命令。

    #!/bin/bash
    set -x
    echo "Hello, World!"
    
  • Shell脚本的运行步骤
  1. 编写脚本

    #!/bin/bash
    echo "Hello, World!"
    
  2. 保存为script.sh

  3. 赋予执行权限

    chmod +x script.sh
    
  4. 执行脚本

    ./script.sh
    

这是一个最简单的Shell脚本示例,它仅包含一条打印“Hello, World!”的命令。

标签:脚本,Shell,name,echo,命令,能看懂,file,2.2
From: https://blog.csdn.net/Argonaut_/article/details/142085252

相关文章

  • Weblogic 12c 12.2.1.10SPB 补丁文件 以及补丁升级
            最近公司项目上新接手了一个weblogic12的运维项目,小版本号码为12.2.1.1.0。为了安全稳定性,决定升级最新版补丁文件。   从oracle官网下载补丁(个人账户无法查看补丁以及下载),解压文件后发现目录文件与之前的补丁文件格式不一样,是一个SPB的补丁List。结构......
  • 在 PowerShell 中,执行 ISO 文件中的 setup 程序并进行静默安装通常涉及以下步骤:
    在PowerShell中,执行ISO文件中的setup程序并进行静默安装通常涉及以下步骤:挂载ISO文件:首先,您需要将ISO文件挂载到虚拟光驱中。这可以使用PowerShell实现。执行静默安装:挂载ISO文件后,您可以运行setup.exe并使用适当的静默安装参数来进行安装。下面是一个P......
  • Xshell 7 官方正版免费下载安装及使用(学校家庭版,满足正常学习工作)
    ​NetSarangComputer,Inc.以过去10年免费提供强大的SSH和SFTP/FTP客户端而自豪。我们的免费许可证不仅是免费的价格,而且没有广告或其他剥削用户的方式。我们认为,来自各种背景和环境的用户都应该能够访问功能强大、功能丰富的SSH和SFTP/FTP客户机。无论是学习、教学,还是仅......
  • Shell脚本基础、组成结构、调试、运算符
    思维导图:一、脚本基础1、shell编程介绍与特性        Shell是种命令解释程序,也可以看作是一种命令语言的解释器。用户在与Shell交互时所输入的命令行必须符合Shell命令的语法和语义规范,才能够被Shell理解并执行。Shell所使用的这种命令语言称为Shell语言。Shell语......
  • jmeter通过beanshell中脚本实现随机获取某天(“yyyy-MM-dd HH:mm:ss“)前1周,一个月,一
    在接口测试中,请求参数中涉及时间的参数可能不是固定死的,因此jmeter想通过beanshell中脚本实现随机获取某天(statusTimeEnd(“yyyy-MM-ddHH:mm:ss”))前1周,一个月,一个季度,半年的时间0点,其中statusTimeEnd的值在用户参数中已配置。参考JMeter性能测试实战的方法:http://lit......
  • 【Shell-多并发】使用Shell脚本在循环中进行多并发的操作
    【Shell-多并发】使用Shell脚本在循环中进行多并发的操作1)方式一(利用for循环)1.1.案例一(缺少wait导致执行顺序有误)1.2.案例二(缺少控制阻塞导致任务全部执行)1.3.案例三(最终版)2)方式二(利用命名管道来做任务队列)3)Shell脚本中$的含义1)方式一(利用for循环)1.1.案例一(缺少wait......
  • linux shell一键查看服务器资源利用率之memory
    基于free-m命令实现[root@logstash~]#free-mtotalusedfreesharedbuff/cacheavailableMem:39313513346112343355Swap:396703967[root@logs......
  • 【Linux】全面讲解 Shell 变量的那些事
    本文内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发、订阅专栏!专栏订阅入口Linux专栏 | Docker专栏 | Kubernetes专栏往期精彩文章【Docker】(全网首发)KylinV10下MySQL容器内存占用异常的解决方法【Docker】(全网首发)Kyli......
  • 二、并发编程与多线程-2.2、多线程(中)
    2.2、多线程(中)2.2.4、为什么启动线程不能直接调用run()方法?调用两次start()方法会有什么后果?答:在Java中,启动线程不能直接调用run()方法的原因是,run()方法是线程的执行体,通过调用start()方法来启动线程可以创建一个新的线程并使其运行。如果直接调用run()方法,则会在当前线......
  • shell请求api,获取json返回值,做判断
    1.shell如何请求api,获取到json返回值:https://www.cnblogs.com/pingguomang/p/184050112.shell如果解析json数据: https://www.cnblogs.com/pingguomang/p/184049963.shell的条件判断:#定义用户的iduser_id="199348"#1.调用api--获取用户数据详细信息response=$(curl......