hylan:shell脚本鸡肋--基本脚本

2024-05-02 21:58
文章标签 基本 shell 脚本 鸡肋 hylan

本文主要是介绍hylan:shell脚本鸡肋--基本脚本,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. ${variable} 形式引用变量   额外的花括号通常用来帮助识别美元符后面的变量名。
  2. 命令替换 的两种方法:第一种 反引号字符 `   例如:echo `date`     第二种 $()格式   例如:echo $(date)
  3. 为了引用当前目录下的文件,可以在shell中使用单点操作符 即(.)。
  4. today变量是被赋予格式化后的data命令的输出。这是提取日期信息生成日志文件名常用的一种技术。  例如:today=$(date +%y%m%d)         ls . -al > log.$today    在当前目录(.) 创建了一个文件:log.180320
  5. 反斜线 \ 允许shell脚本将美元符解读为实际的美元符,而不是变量。
  6. 引用一个变量值时需要使用美元符,而引用变量来对其进行赋值时则不要使用美元符。
  7. umask值只是个掩码,它会屏蔽掉不想授予该安全级别的权限。要把umask值从对象的全权限值中减掉。对文件来说,全权限的值是666(所有用户都有读和写的权限 即:rw-rw-rw-);对目录来说,则是777(所有用户都有读、写、执行权限  即:rwxrwxrwx)
  8. 输出重定向(将命令的输出重定向到文件):command > outputfile  新建或覆盖文件outputfile       command >> outputfile 新建或追加文件outputfile     输入重定向(将文件的内容重定向到命令):command < inputfile   例如:wc < log.180320-2  结果显示了文件log.180320-2 中的 行数 词数 和 字节数。 内联输入重定向(无需使用文件进行重定向 数据的开始和结尾文本标记必须一致):command << marker  date  marker
  9. 管道(管道了连接:将命令输出重定向到另一个命令) command1 | command2     linux实际上会同时运行这两个命令,在系统内部将它们连接起来。在第一个命令产生输出的同时,输出会被立即送给第二个命令。数据传输不会用到任何中间文件或缓冲区。 可以在一条命令中使用任意多条管道。也可以搭配使用重定向和管道来将输出保存到文件中。
  10. 数学运算 两个方法: expr命令 和 $[ operation ]    备注:bash shell数学运算符只支持整数运算,若要进行任何实际的数学计算,这是一个巨大的限制。
  11. bc(內建的bash计算器 浮点解决方案) 浮点运算是由內建变量 scale 控制的,将这个值设置成计算结果中保留的小数位数。scale 默认值是0。
  12. 在脚本中使用bc 基本格式:variable=$(echo"options; expression" | bc)   例如:
  13. marvin@marvin-pc:~/hylan$ var1=20;var2=3.14159
    marvin@marvin-pc:~/hylan$ var3=$(echo "scale=2;$var1 * $var2" | bc)
    marvin@marvin-pc:~/hylan$ echo $var3
    62.83180
  14. 内联输入重定向:marvin@marvin-pc:~/hylan$ variable=$(bc << EOF
    > options
    > statements
    > expressions
    > EOF
    > )
  15. 例如:
  16. marvin@marvin-pc:~/hylan$ var1=10.46
    marvin@marvin-pc:~/hylan$ var2=43.67
    marvin@marvin-pc:~/hylan$ var3=33.2
    marvin@marvin-pc:~/hylan$ var4=71
    marvin@marvin-pc:~/hylan$ var5=$(bc << EOF
    > scale=4
    > a1=($var1 * $var2)
    > b1=($var3 * $var4)
    > a1 + b1
    > EOF
    > )
    marvin@marvin-pc:~/hylan$ echo $var5
    2813.9882
  17. 如上,在bash计算器中创建的变量只在bash计算器中有效(a1和b1),不能在shell脚本中使用。
  18. 退出状态码 是一个0~255的整数值,在命令结束运行时由命令传给shell,可以捕获这个值并在脚本中使用。








这篇关于hylan:shell脚本鸡肋--基本脚本的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/955221

相关文章

Python Faker库基本用法详解

《PythonFaker库基本用法详解》Faker是一个非常强大的库,适用于生成各种类型的伪随机数据,可以帮助开发者在测试、数据生成、或其他需要随机数据的场景中提高效率,本文给大家介绍PythonF... 目录安装基本用法主要功能示例代码语言和地区生成多条假数据自定义字段小结Faker 是一个 python

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

SpringBoot整合MybatisPlus的基本应用指南

《SpringBoot整合MybatisPlus的基本应用指南》MyBatis-Plus,简称MP,是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,下面小编就来和大家介绍一下... 目录一、MyBATisPlus简介二、SpringBoot整合MybatisPlus1、创建数据库和

通过Python脚本批量复制并规范命名视频文件

《通过Python脚本批量复制并规范命名视频文件》本文介绍了如何通过Python脚本批量复制并规范命名视频文件,实现自动补齐数字编号、保留原始文件、智能识别有效文件等功能,听过代码示例介绍的非常详细,... 目录一、问题场景:杂乱的视频文件名二、完整解决方案三、关键技术解析1. 智能路径处理2. 精准文件名

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re

Python3脚本实现Excel与TXT的智能转换

《Python3脚本实现Excel与TXT的智能转换》在数据处理的日常工作中,我们经常需要将Excel中的结构化数据转换为其他格式,本文将使用Python3实现Excel与TXT的智能转换,需要的可以... 目录场景应用:为什么需要这种转换技术解析:代码实现详解核心代码展示改进点说明实战演练:从Excel到

Python脚本实现图片文件批量命名

《Python脚本实现图片文件批量命名》这篇文章主要为大家详细介绍了一个用python第三方库pillow写的批量处理图片命名的脚本,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言源码批量处理图片尺寸脚本源码GUI界面源码打包成.exe可执行文件前言本文介绍一个用python第三方库pi

Python中多线程和多进程的基本用法详解

《Python中多线程和多进程的基本用法详解》这篇文章介绍了Python中多线程和多进程的相关知识,包括并发编程的优势,多线程和多进程的概念、适用场景、示例代码,线程池和进程池的使用,以及如何选择合适... 目录引言一、并发编程的主要优势二、python的多线程(Threading)1. 什么是多线程?2.

shell脚本自动删除30天以前的文件(最新推荐)

《shell脚本自动删除30天以前的文件(最新推荐)》该文章介绍了如何使用Shell脚本自动删除指定目录下30天以前的文件,并通过crontab设置定时任务,此外,还提供了如何使用Shell脚本删除E... 目录shell脚本自动删除30天以前的文件linux按照日期定时删除elasticsearch索引s