shell编程的核心内容

详细介绍pytorch重要的API Tensor 是 PyTorch 中最基本的数据结构,提供了多种创建和操作张量的函数。Autograd 提供了自动求导功能,可以跟踪 Tensor 上的操作并计算梯度。损失函数用于衡量模型预测值与真实值之间的差异,提供了多种损失函数。是构建神经网络的基础类,提供了定义网络层和前向传播的方法。提供了 GPU 计算的支持,包括设备管理、内存管理等。提供了一些常用的函数式操作,如激活函数、损失函数等。提供了常用的数据集、模型架构和图像转换工具。提供了数据加载和预处理的工具,包括。 阅读详情

  很多LINUX的初学者以前可能用过很多dos的命令,对SHELL这种命令式的编程语言略知一二,但并没有接触很多SHELL的用法,没能真正抓住这种强大的编程语言的内涵,在这编文章里,我们用简短的篇幅使LINUX学习者掌握这门语言。

在这篇文章里,我们不会关注SHELL每个命令的具体用法,因为这些在网上查是完全可以搜索出来的,有很多资料可以参考,我们会通过实例直抵SHELL的真谛,关注它的控制结构和条件测试,以及函数和变量的用法。

Shell英文直译过来是“壳”,是一种介于操作系统和用户之间的一种特殊的应用程序。常见的shell有:Bourne shell (sh)、Korn Shell(ksh)、C shell (csh)、Bourne Again Shell(bash)等。我们通常用的是BASH。

试想,一个SHELL高手将会有机会进入LINUX/DBA网络管理员这个高薪并充实的行业。所以,在学习前,你必须认为自己是个高手,有这样的信心,才能学好。所以,我们先介绍一个你可能没有用过的命令useradd用以实现添加一个新的用户到你的系统中。

• useradd suojian

• mkdir /home/suojian

• chown suojian:users /home/suojian

• passwd suojian

• 这样重启虚拟机就能用suojian用户登陆   

这样照着做,你肯定能实现的,当然,前提是在root用户下。为什么呢?

好多人总喜欢问为什么?提出一个问题,不是因为不动脑思考!

我认为,在LINUX的世界遨游,很多东西是没有为什么的,GNU组织的一些东西就是规则(THE RULES)约束的。规则是很重要的东西,西方的“法制”明显高于“德制”。所以,在东方文明的中国大学里,很多课程设置都并没有介绍太多规则性的东西。我们本科毕业,肯定没有学习过SHELL、PERL、还有Makefile,以及正则表达式的匹配。而这些是工业界老生常谈的。

说的有点远了,总结一下,就是告诫我们的学员以及所有LINUX爱好者do as what it is!在LINUX的学习过程中,戒焦躁。

当然,上面的例子只是普通的一个SHELL脚本,如果掌握了LINUX系统用户和组的原理,就知道为什么了。有兴趣可以阅读下/etc/passwd和/etc/group两个文件。熟悉一下每位的函数,是用:隔开的。SHELL也提供了一组命令用以实现文件、目录及其权限的管理。

SHELL的本质在于它的编程能力,它的程序就是各种命令的集合,其中也可以使用正则表达式的匹配。最关键的,我们要掌握它提供的特殊字符,变量的用法和各种条件选择语句。

SHELL提供的特殊字符如下:

#:注释,这些说明不会被当成命令的程序执行。在/etc/zshrc文件中便能看到

&:以后台方式运行。例如执行find / -name –print &命令,会把这个程序放到后台执行

‘:取代命令字符.例如:执行alias dir=‘ls-al’,定义dir成为ls-al命令的别名

;:可用它将多个命令分隔开来,让命令依次执行.

>:把执行结果输入到一个文件中.若该文件已经存在,则原有内容回被删除.

 #ls –al > dir.txt

>>:把执行结果附加到一个已存在的文件后面.

 #cat data.txt >> result.txt

|:创建管线,将一个命令的执行结果输入给下一个命令使用

||:OR运算,一般用于if 、while   等条件语句判断式中

~:用户登录后所在的目录,也就是用户的家目录

.:表示当前目录

..:表示上一级目录

当然,也包括下图中的字符:

你可以通过如下几个实验验证它的原理:

• $ cat arg.c

•  main(int argc,char **argv)

•  {int i;

•    for(i=0;i<argc;i++)

•         printf(“%d:[%s]/n”, i , argv[i]);}

• $ gcc .c –o arg

• $ chmod u+x param; cat param

• #!/bin/sh

•  echo $$

•  echo $#

•  echo”Usage:$0 arg1 arg2…”

•  ./arg “$@”

•  ./arg “$*”

这样我们用./param后面跟些测试参数来看下程序的输出:

• $ ./param tope is best $HOME

• 19752

• 4

• Usage: ./param arg1 arg2 …

• 0:[./arg]

• 1:[tope]

• 2:[is]

• 3:[best]

• 4:[/root]

• 0:[./arg]

• 1:[tope is best /root]

好了,如果你照着做了,相信你成功了,相信你也理解了这些特殊字符的涵义,我们不会停留在这些弱智的符号上面。

你肯定知道SHELL的变量的概念,如果你知道C语言的int i.但我在这里想说的不是SHELL的普通变量。

我介绍一下SHELL局部变量和环境变量的概念和用法。我想这对你是有帮助的。局部变量是所创建的shell变量,默认为局部变量。环境变量(全局变量)是在当前shell下启动的子进程只继承环境变量不继承局部变量。如果你在SHELL的终端下运行一个SHELL的脚本test.sh,这样test.sh就派生一个新的子进程,局部变量是不会传递给这个子进程的,而环境变量能够传递。

#vi test.sh

echo my name is $name

#name=suojian定义局部变量

#./test.sh

#export name定义成环境变量

#./test.sh

这种变量的区别是SHELL变量的支持核心所在!

好了,SHELL的分支结构和条件测试下次再介绍。

2026年复旦微电数字IC笔试试卷带答案解析 摘要: 本文为复旦微电子MCU/SOC岗位笔试模拟题,涵盖单片机架构、数字电路、存储技术等核心知识点。内容包括: 单选题(30分):考察Cortex-M中断机制、时序分析(建立/保持时间)、逻辑化简、跨时钟域设计(格雷码应用)、存储器特性(NAND Flash操作单元)等; 波形分析(15分):聚焦D触发器行为、时钟分频、建立时间违例判断及跨时钟域同步; 多选题(25分):涉及亚稳态成因与处理、异步FIFO设计要点、MCU低功耗策略、NAND Flash特性及复旦微电市场地位; 简答题(20分):解析建立/ 阅读详情

相关推荐

如何利用三阈值游程理论识别干旱事件_python

如果当前时间点与上一个干旱事件的结束位置相隔不超过一个月(`index - current_event['end_index']

weixin_44259522的博客 1945

shell编程核心知识点

shell核心编程知识点,包括 执行脚本source和的区别 替换运算符 模式匹配运算符 shell中的常见参数引用 数组 算术运算 关系运算符 布尔运算符 逻辑运算符 字符串运算符 文件测试运算符 if语句 case语句 for循环 whileuntil循环

奔跑的蜗牛 755

工业级越界行为识别数据集:YOLOv8/v9直接训练的围栏异常检测资源

越界行为识别是智能安防与工业安全中的基础视觉任务,其核心在于对人员、车辆等目标跨越物理边界(如围栏、警戒线、作业禁区)的精准检测与分割。该技术依赖于高质量实例分割标注、归一化坐标格式及场景鲁棒性设计,具备低延迟、高召回、强泛化等工程价值,广泛应用于智慧工地电子围栏、化工厂禁区告警、物流园区越界监控及变电站安全巡检等真实工业场景。本数据集以YOLOv8/v9为基准构建,提供万张实拍+合成图像、像素级Segmentation标注、分层划分与完备元数据,开箱即用,直击工业落地中数据清洗、格式转换与标注不一致等关键

weixin_30080745的博客 316

一些小游戏

譬如七巧板。小时候大家都玩过的 还有一些比较古老的智力游戏,如九连环、华容道、骨牌、鲁班锁等 这些都是把数学和游戏玩具结合起来的,趣味无穷 其中玩的人最多最广泛的,我相信就是七巧板了,呵呵,华容道也不错,我买的几部手机里面都有华容道这个游戏

码农 617

Python+QMT量化交易实战:从零搭建你的第一个极速策略(附完整代码)

本文提供了一份详细的Python+QMT量化交易实战指南,手把手教你从零搭建一个可回测、可实盘的极速策略。内容涵盖环境配置、QMT核心机制解析、双均线策略的完整代码实现、回测优化方法以及实盘部署要点,帮助量化交易新手快速入门并掌握核心开发流程。

b9c0d的博客 1012

Isaacgym使用操作指南

Isaac Gym 是一个强大的仿真工具,特别适合那些需要进行大规模并行仿真和训练的机器人和强化学习任务。通过 GPU 加速、深度学习集成和丰富的物理仿真能力,Isaac Gym 能够显著提高仿真和训练效率,是机器人学和 AI 研究中的一大利器。

Tony Wey的博客 1万+

Linux 命令行与 shell 脚本编程大全 5 理解 shell

了解子 shell 和 父 shell 之间的关系以及一些命令 5.1 shell 的类型 Linux 中,用户使用的 shell 类型,被配置在 /etc/passwd 文件中,通常都是 bash shell 除了 bash shell ,CentOS 中一般还内置了 tcsh shell 、dash shell 、ash shell、tcsh shell 查看当前系统是否内置了上述 sh...

asing1elife's blog 460

QT5.14.2离线安装包保姆级教程:断网、选组件、避坑全记录

本文详细介绍了QT5.14.2离线安装包的完整流程,特别针对Windows平台开发者提供断网安装、组件选择及避坑指南。作为QT5系列中最后一个免费离线版本,5.14.2具有免注册、全组件离线安装等独特优势,是开源开发者的理想选择。文章涵盖从环境准备到安装后配置的全方位指导,帮助开发者高效完成安装并避免常见问题。

weixin_30924087的博客 577

Linux进阶之路———Shell 编程入门

引言 通过 Shell 编程的学习,铺平架构师道路上的一块大砖。 Shell 在Linux 系统中的定位如下所示: 一、第一个 Shell 脚本 我们通过一个简单的 Shell 脚本来感受一下。 在 Shell 中不需要加 “;” 结尾,通过 vim 可以进行 shell 的编程工作,并且一般建议为 shell 文件添加可执行权限。 更改权限之后,执行脚本: 另外如果...

Morty的技术乐园 773

【论文笔记】Beyond Low-frequency Information in Graph Convolutional Networks

文章目录1. Abstract2. Introduction低频和高频信号作用FAGCN怎么设计3. An Experimental Investigation4. Model4.1 filter定义4.2 Aggregation4.3 Problems of signal combination4.4 Spatial vision of FAGCN4.5 系数αijG\alpha_{i j}^{G}αijG​4.6 模型整体框架FAGCN的表达能力实验 本文发表在AAAI-21上 论文地址:https:

Running Snail 5601

OpenHarmony + AI:深度解析 Whisper.cpp 智慧语音系统级移植与 NAPI 封装实战

【代码】OpenHarmony + AI:深度解析 Whisper.cpp 智慧语音系统级移植与 NAPI 封装实战。

m0_67505153的博客 187

shell脚本详解

目录 一、shell脚本的详细介绍1.1 基础概念1.2 几种常见的Shell1.3 Shell与编译型语言的差异1.4 什么时候使用Shell二、shell脚本的使用2.1 建立和运行shell程序2.2 shell变量2.3 shell特殊变量2.4 常用shell内嵌命令2.5 条件测试三、shell脚本编程基础知识3.1 shell基本运算符3.2 shell条件语句3.3 shell循环类型四、shell数组五、shell函数5.1 创建函数:5.2 参数传递给函数:5.3 从函数的返回值:5.4

创作不易,请多支持,将为本站提供更多「有价值的文章」。 2万+

SD卡烧写Linux kernel——SD卡分区,并烧写uboot,kernel,DTB及filesystem

Linux Ubuntu环境下对SD卡分区(烧写uboot,kernel,及filesystem) 介绍dd命令的使用,SD卡分区、格式化、复制文件等 fdisk命令

weixin_42408707的博客 5056

shell编程的核心内容(2)

顶嵌专栏 520

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

shell编程的核心内容(1)-来自顶嵌索健老师

顶嵌专栏 695

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

shell编程

shell编程基础知识

新生码农一枚 1037

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Linux 18shell编程

1. 2. 3. 4.

sunshinecandy的博客 2641

SHELL编程命令大全

文章目录一、文本处理工具1. grep(重要)语法和选项2. cut工具(重要)语法和选项3. sort工具语法和选项4.uniq工具5.tee工具6.diff工具语法和选项7. paste工具8. tr工具语法和选项二、bash的特性1、命令和文件自动补全2、常见的快捷键3 、==常用的通配符(重点)==4、==bash中的引号(重点)== 一、文本处理工具 1. grep(重要) grep是行过滤工具;用于根据关键字对行进行过滤 语法和选项 > grep [选项] '关键字' 文件名 OPT

一名小码农的博客 3万+

Shell编程基本介绍

Shell编程是一种使用Shell(命令行解释器)来编写脚本和程序的方法。Shell是用户与操作系统交互的接口,它允许用户通过命令行输入指令来执行程序、管理文件系统中的文件和目录等。Shell脚本是一种为Shell编写的脚本程序,用于自动化重复性任务、系统管理任务等。Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。注意,赋值号=的周围不能有空格,这可能和你熟悉的大部分编程语言都不一样。变量名由数字、字母、下划线组成;

2301_77698138的博客 1484

Linux Shell脚本编程提高

Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核,不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序.Shel编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果,下面我们会介绍Shell-Script的编写.

微软技术分享 6249

shell编程入门

shell编程 一、初始shell shell 定义 shell的分类和切换 使用场景 shell 特性回顾 bash 初始化 二、shell 脚本规范 三、变量的类型 练习1 练习2 四、脚本运行 创建bash脚本(shell脚本) bash脚本执行 子shell bash 脚本测试 五、变量置换 命令替换 变量替换 变量替换-匹配截取 basename & dirname 六、shel...

晨光运维之路 3251

shell编程之基础

文章目录shell基础编程与编程语言shell介绍为何要用shall -----一些日常的运维工作自动化计算机完整体系结构图运行shell程序的两种方式变量变量的使用删除变量引号对变量的影响变量作用域系统环境变量配置文件:元字符运行shell脚本程序两种方式 shell基础 编程与编程语言 ​ 编程的目的: #计算机的发明,是为了用机器取代/解放人力,而编程的目的则是将人类的思想流程按照某种能够被计算机识别的表达方式传递给计算机,从而达到让计算机能够像人脑/电脑一样自动执行的效果。 ​ 什么是

yangenguang的博客 226

Linux之Shell脚本编程

Shell概念  一、概念 Shell 是一个用 C 语言编写的程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核 的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。 二、Shell 脚本   一种为 shell 编写的脚本程序。业界所说的 shell 通常都是指 shell 脚...

superXZT的博客 402

Shell编程

    利用Shell编程,我们可以方便的实现更复杂的功能。比如说列出当前目录下所有的C文件,我们可以在命令行下直接输入以下脚本:        for file in *.c        do        print  "$file"        done    我们可以把这些脚本写入文件中,通过调用文件来执行脚本,这对于编写大型脚本是十分有帮助的。下面我就来介绍Shell编程的一

Junlix的专栏 2178

centos7 shell编程

初识shell编程

BGONE的博客 4261
上一篇: 嵌入式Linux内核优化裁剪
下一篇: Linux常见使用方法
TopEmbedded
博客等级 码龄18年 58粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值