首页 > 系统相关 >shell入门基础

shell入门基础

时间:2024-04-15 19:56:45浏览次数:24  
标签:脚本 shell 入门 基础 echo sh 参数 bash

一、 shell变量定义及注意点
1、shell只读变量定义: readonly 例: a=xxx 只读不可更改,不能unset(撤销变量)。

注意点:1. 变量不能以数字开头 2. bash中默认是字符串类型。
2、局部变量提升全局变量命令: export 变量 例:a=hello ==> 提升全局变量: export a(后直接跟白变量名)

二、shell中特殊环境变量

  1. $n 用于脚本定义变量使用,脚本后跟参数,运行脚本输出结果(脚本后参数),a.sh 参数
    脚本示例:a.sh
点击查看代码
#!/bin/bash
#----------$n-----------
echo $1
echo $2
#---------退出保存--------
2. $# 判断参数个数,脚本后跟参数,可输出参数个数。例:b.sh 12 da 45 (此处12 da 45为参数),运行结果为3(即为3个参数)。 脚本示例:b.sh
点击查看代码
#!/bin/bash
#----------$#-----------
echo $#
#---------退出保存--------
$* and $@ 按照顺序打印输出参数。例:c.sh ga jh hf (此处ga jh hf为参数),运行结果为ga jh hf。 脚本示例: c.sh
点击查看代码
#----------$*-----------
#!/bin/bash
echo $*
echo $@
#---------退出保存--------
3. $? 判断当前脚本运行结果,运行成功返回0,失败返回1。以hua.sh为例:

声明:以上内容是日常学内容笔记,仅供参考,如有雷同实属巧合,欢迎评论指教。

标签:脚本,shell,入门,基础,echo,sh,参数,bash
From: https://www.cnblogs.com/brxx/p/18136664

相关文章

  • java基础_05_流程控制
    1、用户交互Scanner(译:扫描器) 1\使用next方法接收,只接收空格以前的packageliuchengkongzhi;importjava.util.Scanner;publicclassScanner01{publicstaticvoidmain(String[]args){//创建一个扫描器对象,用于接收键盘数据ScannerSca......
  • 系统架构基础知识入门指南-上
    接上一篇文章《为什么测试要了解系统架构》的内容,这篇聊聊如何掌握基础的系统架构知识。从我个人的角度来说,所谓的系统架构,就是对软件系统整体结构的抽象设计。如何理解这句话呢?举个生活中常见的例子:如何盖一座房子?正常的做法是先勘探地质,然后对房子进行设计(房屋大小朝向、门......
  • Pytorch DistributedDataParallel(DDP)教程二:快速入门实践篇
    一、简要回顾DDP在上一篇文章中,简单介绍了Pytorch分布式训练的一些基础原理和基本概念。简要回顾如下:1,DDP采用Ring-All-Reduce架构,其核心思想为:所有的GPU设备安排在一个逻辑环中,每个GPU应该有一个左邻和一个右邻,设备从它的左邻居接收数据,并将数据汇总后发送给右邻。通过N轮迭代......
  • 洛谷题单指南-数学基础问题-P1414 又是毕业季II
    原题链接:https://www.luogu.com.cn/problem/P1414题意解读:有n个数,从其中选k个数,k=1,2,3......n,使得这k个数的gcd最大。解题思路:如何求k个数的最大公约数呢?暴力法肯定不行。可以从1到n枚举这个最大公约数i,看是否有>=k个数的因数是i具体来说,用桶数组存放所有整数,a[x]表示x的......
  • 01、OSPF基础
    OSPF基础 OSPF协议具有以下特点:OSPF把自治系统AS(AutonomousSystem)划分成逻辑意义上的一个或多个区域;OSPF通过LSA(LinkStateAdvertisement)的形式发布路由;OSPF依靠在OSPF区域内各设备间交互OSPF报文来达到路由信息的统一;OSPF报文封装在IP报文内,可以采用单播或组......
  • flask框架基础(1)
    flask基础一.开发模式flask是b/s(浏览器开发)开发模式二.flask七行代码fromflaskimportFlaskapp=Flask(_name_)@app.route("/")defindex():retun"打开此网页"if_name_=='_name':app.run()三.flask核心1.werkzeug负责后端2.jinja2负责前端......
  • 实验2 C语言分支与循环基础应用编程
    task1#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN5intmain(){intnumber;inti;srand(time(0));for(i=0;i<N;++i){number=rand()%65+1;printf("20238331%04d......
  • 洛谷题单指南-数学基础问题-P1572 计算分数
    原题链接:https://www.luogu.com.cn/problem/P1572题意解读:计算分数+、-运算的结果。解题思路:根据题目要求,逐项计算并约分,则不会超int,问题就比较直接了定义a1/b1为前一项的分子分母,a2/b2为当前项的分子分母依次遍历字符串,处理出分子和分母,本题的关键其实是字符串的处理当读取......
  • 洛谷题单指南-数学基础问题-P4057 [Code+#1] 晨跑
    原题链接:https://www.luogu.com.cn/problem/P4057题意解读:给定三个数,计算其最小公倍数。解题思路:三个数a、b、clcm(a,b,c)=lcm(lcm(a,b),c)100分代码:#include<bits/stdc++.h>usingnamespacestd;typedeflonglongLL;LLa,b,c;LLgcd(LLa,LLb){i......
  • 07 Shell工具【重点】
    cut命令cut命令从文件的每一行剪切字节,字符和字段并将这些字节,字符,字段输出cut[选项参数]filename  说明:默认分隔符是制表符-f列号,提取第几列-d分隔符,按照指定分隔符分割列touchcut.txt(1)切割cut.txt第一列cut-d""-f1cut.txt(2)切割cut.txt第二列,第三......