返回顶部
首页 > 资讯 > 服务器 >Shell编程指南
  • 225
分享到

Shell编程指南

指南Shell 2022-06-04 21:06:48 225人浏览 泡泡鱼
摘要

基础知识 shell执行方式 sh xx.sh (文件须有r权限) || ./xx.sh (文件须有x权限) 注:sh xx.sh方式比较安全 文件名后缀 .sh shell内容开头 #!/bin/

基础知识

shell执行方式 sh xx.sh (文件须有r权限) || ./xx.sh (文件须有x权限) 注:sh xx.sh方式比较安全
文件名后缀 .sh
shell内容开头 #!/bin/bash || #!/bin/sh || #!/bin/csh || #!/bin/ksh 注:#!/bin/bash 使用比较多
退出 exit 0

变量赋值与使用

不需要定义即可直接使用 注:变量赋值时=号两端不能有空格
以$变量名或${变量名}访问变量内容

流程控制

判断 注:确保方括号的空格 ; 确定每个条件都有then

if [ ?d ‘dirname' ];then 

    命令集1 

elif 条件2;then 

    命令集2 

else 

     命令集4 

fi

case $变量 in 

match_1 ) 

        命令集1 

        ;; 

match_2) 

        命令集2 

        ;; 

…… 

*)(可选) 

        命令集n 

        ;; 

esac

循环

1.while 条件

do

//TODO

done

2.until 条件

do 

    命令集 

done


3.for ((初始值;条件;步进))

do 

    命令集 

done

4.for 循环变量 in 变量列表

do 

    命令集 

done

常用判断条件语句

判断文件类型

测试标志 语义 举例
-e “文件或目录”是否存在 test ?e $file_name
-f “文件或目录”是否存在且为文件 test ?f $file_name
-d “文件或目录”是否存在且为目录 test ?d “/boot”
-b “文件或目录”存在且为块设备 test ?b “/dev/sda1”
-c “文件或目录”存在且为字设备 test ?c “/dev/tty0”
-S “文件或目录”存在且为Socket文件 test ?S “/var/run/rpcbind.sock”
-p “文件或目录”存在且为FIFO文件 test ?p $file_name
-L “文件或目录”存在且为链接文件 test ?L $file_name

判断文件权限

测试标志 语义
-r “文件或目录”是否存在且具有可读权限
-w “文件或目录”是否存在且具有可写权限
-x “文件或目录”是否存在且具有可执行权限
-u “文件或目录”存在且具有SUID的属性
-g “文件或目录”存在且具有SGID的属性
-k “文件或目录”存在且具有Sticky bit的属性
-s “文件或目录”存在且为非空文件

文件之间比较

测试标志 语义
-nt “文件名1”是否比”文件名2”新 (newer than)
-ot “文件名1”是否比”文件名2”旧(older than)
-ef 判断”文件名1”和”文件名2”是否为同一个文件,主要用来判断硬链接,即两个文件是否指向同一个inode节点

整数之间比较

测试标志 语义
-eq 两数相等(equal)
-ne 两数不等(not equal)
-gt 整数1大于整数2(greater than)
-lt 整数1小于整数2(less than)
-ge 整数1大于等于整数2(greater than or equal)
-le 整数1小于等于整数2(less than or equal)

与、或、非
测试标志 语义
-a (and) 两个条件同时成立则返回true test ?e file1 ?a ?d file2
-o (or)两个条件任意一个成立则返回true test ?r file1 ?o ?x file2
! (非)当前条件取非 test ! ?d file1

控制结构

计算整数变量值

expr 注: 运算符号和参数之间要有空格分开;通配符号(*),在作为乘法运算符时要用;
let 例子:let s=(2+3)*4

--结束END--

本文标题: Shell编程指南

本文链接: https://lsjlt.com/news/18341.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Shell编程指南
    基础知识 shell执行方式 sh xx.sh (文件须有r权限) || ./xx.sh (文件须有x权限) 注:sh xx.sh方式比较安全 文件名后缀 .sh shell内容开头 #!/bin/...
    99+
    2022-06-04
    指南 Shell
  • 实时 Linux Shell 中 Python 编程技术的进阶指南。
    实时 Linux Shell 中 Python 编程技术的进阶指南 Linux Shell 是一个非常强大的工具,它可以帮助我们完成各种各样的任务。而 Python 作为一种优秀的编程语言,也可以很好地与 Linux Shell 配合使用。...
    99+
    2023-09-24
    实时 linux shell
  • Shell编程:从初学者到专家的完整指南
    Shell编程是一种在Unix/Linux操作系统下进行编程的方式,它是一种强大的工具,可以帮助您自动化任务、处理大量数据和快速执行常见任务。本篇文章将为您提供一个从初学者到专家的完整指南,帮助您了解Shell编程的基础知识,掌握一些高级...
    99+
    2023-08-16
    laravel 学习笔记 shell
  • Spark 编程指南 (一) [Spa
    Python Programming Guide - Spark(Python) Spark应用基本概念 每一个运行在cluster上的spark应用程序,是由一个运行main函数的driver program和运行多种并行操作的exec...
    99+
    2023-01-31
    指南 Spark Spa
  • Spark Streaming 编程入门指南
    Spark Streaming 是核心Spark API的扩展,可实现实时数据流的可伸缩,高吞吐量,容错流处理。可以从许多数据源(例如Kafka,Flume,Kinesis或TCP sockets)中提取数据,并且可以使用复杂的算...
    99+
    2022-02-15
    Spark Streaming 编程入门指南
  • PHP入门指南:HTTP编程
    PHP入门指南:HTTP编程随着互联网的飞速发展,网站已经成为人们交流、获取信息和进行业务交易的重要途径。在网站开发的过程中,PHP作为一种广泛使用的Web编程语言,得到了大量的应用。HTTP(Hypertext Transfer Prot...
    99+
    2023-05-22
    编程 PHP Http
  • PHP入门指南:UDP编程
    PHP是一门十分流行的Web编程语言,早期更被大家认为是一种简单易学的脚本语言。然而,由于其流行度,在过去几年中,它已经成长为一门成熟的编程语言,可以实现各种任务和项目。而在这门语言中,UDP编程是一个十分重要和有趣的主题。UDP(User...
    99+
    2023-05-20
    编程 PHP UDP
  • Python GUI 编程:新手指南
    ...
    99+
    2024-04-02
  • PHP入门指南:多线程编程
    PHP是一种流行的服务器端编程语言,用于创建Web应用程序和动态网站。虽然PHP本身不支持多线程编程,但它提供了一些工具和扩展,可用于实现非阻塞I/O操作和进程间通信。本文将介绍PHP多线程编程的基本知识和工具。多线程编程基础多线程编程是一...
    99+
    2023-05-20
    PHP(编程语言) 多线程编程(并发编程方式) 入门指南(针对初学者的指导文本)
  • Java 线程池并发编程指南
    如何使用线程池 使用线程池需要遵循以下步骤: 创建线程池对象。 提交任务到线程池。 关闭线程池。 线程池工厂 线程池工厂是一个创建线程池对象的工厂类,它允许定制线程池的行为,例如线程数量、队列长度和任务拒绝策略。 核心线程和最大线程 ...
    99+
    2024-03-13
    线程池
  • ASP和Leetcode入门指南:如何利用Shell编写高效程序?
    Shell编程是Linux系统中最重要的编程语言之一,它是一种脚本语言,可以用来自动化执行一些操作和任务,例如文件处理、进程管理等等。在编写高效程序的过程中,Shell编程是一个非常有用的工具。本文将介绍如何通过学习ASP和Leetcod...
    99+
    2023-11-05
    leetcode 教程 shell
  • PHP入门指南:TCP/IP编程
    PHP作为一个流行的服务器端脚本语言,它不仅可以用于Web应用程序的开发,还可以用于进行TCP/IP编程以及网络编程。在本文中,我们将为您介绍TCP/IP编程的基础知识和如何使用PHP进行TCP/IP编程。一、TCP/IP编程的基础知识TC...
    99+
    2023-05-20
    PHP入门 TCP/IP编程 编程指南
  • PHP入门指南:异步编程
    PHP作为一门流行的脚本语言,一直以来都是Web开发的主流语言之一。在Web开发中,异步编程被越来越多地应用于网络爬虫、实时聊天、长轮询等高性能场景。本文将介绍PHP异步编程的相关知识,以便读者掌握异步编程基础,提高Web应用性能。一、异步...
    99+
    2023-05-20
    PHP 异步编程 入门指南
  • Go语言并发编程指南
    Go语言是一种开源的编程语言,它被设计用于构建简单、可靠和高效的软件。其中最显著的特点之一便是其强大的并发编程能力。通过Go语言的并发特性,可以更好地利用多核处理器,实现高效的并行处理...
    99+
    2024-04-02
  • PHP 函数异步编程指南
    答案: php 中的异步编程允许函数在不阻塞主线程的情况下运行,提高性能和响应能力。异步编程方法:协程和生成器。协程:轻量级线程,可暂停和恢复执行。生成器:惰性迭代器,可生成值并暂停和恢...
    99+
    2024-04-12
    php 异步编程 并发访问 swoole
  • Go语言编程入门指南
    Go语言(Golang)是由Google开发的一种编程语言,它的设计简洁、高效,并且具有很强的并发特性,因此受到了许多开发者的青睐。本文将为您提供一份简单的Go语言编程入门指南,介绍基...
    99+
    2024-04-02
  • Shell 脚本编写入门指南:从 Java 开始学起
    Shell 脚本是一种非常强大的工具,可以让你通过简单的命令快速地完成复杂的任务。它可以让你自动化很多繁琐的工作,例如文件操作、系统管理、进程管理等等。在这篇文章中,我们将从 Java 开始学习 Shell 脚本编写,帮助你更好地理解 S...
    99+
    2023-10-15
    django linux shell
  • linux shell脚本学习指南
    从头一来二去阅读语法和命令说明,对于脚本小白来说比较枯燥,难以坚持,所以这里选择对一份完整的shell脚本代码来逐行逐段解读,希望可以渡一渡小白,帮助我们快速进入脚本的大门。 老司机要开车了: #!/bin/sh 用注...
    99+
    2024-04-02
  • linux shell脚本学习指南
    从头一来二去阅读语法和命令说明,对于脚本小白来说比较枯燥,难以坚持,所以这里选择对一份完整的shell脚本代码来逐行逐段解读,希望可以渡一渡小白,帮助我们快速进入脚本的大门。 老司机...
    99+
    2024-04-02
  • Flink入门(五)——DataSet Api编程指南
    Apache Flink Apache Flink 是一个兼顾高吞吐、低延迟、高性能的分布式处理框架。在实时计算崛起的今天,Flink正在飞速发展。由于性能的优势和兼顾批处理,流处理的特性,Flink可能正在颠覆整个大数据的生态...
    99+
    2020-07-01
    Flink入门(五)——DataSet Api编程指南
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作