当前位置: 首页 > news >正文

【ICer的脚本练习】“精通各种语言的hello world!“

系列的目录说明请见:ICer的脚本练习专栏介绍与全流程目录_尼德兰的喵的博客-CSDN博客

前言

这一节呢主要是检查一下Linux和win环境是不是能正常的支持咱们的脚本学习,所以来答应各种语言的hello world!,毕竟打印了就是学会了٩(๑❛ᴗ❛๑)۶顺便从最基础的细节咱们一点一点来。

准备工作

和之前一样,你手里应该已经有linux系统的虚拟机了,那么检查一下环境中的工具支持:

[ICer@IC_EDA /home/ICer]$which perl
/usr/bin/perl
[ICer@IC_EDA /home/ICer]$perl --versionThis is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi
(with 44 registered patches, see perl -V for more detail)Copyright 1987-2012, Larry WallPerl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
[ICer@IC_EDA /home/ICer]$which python
/usr/bin/python
[ICer@IC_EDA /home/ICer]$python --version
Python 2.7.5
[ICer@IC_EDA /home/ICer]$which python3
/usr/bin/python3
[ICer@IC_EDA /home/ICer]$python3 --version
Python 3.6.8
[ICer@IC_EDA /home/ICer]$which bash
/usr/bin/bash
[ICer@IC_EDA /home/ICer]$bash --version
GNU bash, 版本 4.2.46(2)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
许可证 GPLv3+: GNU GPL 许可证版本3或者更高 <http://gnu.org/licenses/gpl.html>这是自由软件,您可以自由地更改和重新发布。
在法律允许的范围内没有担保.
[ICer@IC_EDA /home/ICer]$which csh
/usr/bin/csh
[ICer@IC_EDA /home/ICer]$csh --version
tcsh 6.18.01 (Astron) 2012-02-14 (x86_64-unknown-linux) options wide,nls,dl,al,kan,sm,rh,color,filec
[ICer@IC_EDA /home/ICer]$which tclsh
/usr/bin/tclsh
[ICer@IC_EDA /usr/local/bin]$make -v
GNU Make 4.2
为 x86_64-pc-linux-gnu 编译
Copyright (C) 1988-2016 Free Software Foundation, Inc.
许可证:GPLv3+:GNU 通用公共许可证第 3 版或更新版本<http://gnu.org/licenses/gpl.html>。
本软件是自由软件:您可以自由修改和重新发布它。
在法律允许的范围内没有其他保证。
[ICer@IC_EDA /usr/local/bin]$which awk
/usr/bin/awk
[ICer@IC_EDA /usr/local/bin]$which sed
/usr/bin/sed

然后再打开正版激活后的excel,点击“文件” - “选项” - “自定义功能区”:

好的,准备工作完成了。

第一次执行

在linux环境下右键打开终端,输入:

[ICer@IC_EDA /home/ICer]$echo 'hello world!'
hello world!

注意这里不要使用双引号,否则会报错(参见Linux -bash: !“: event not found 问题解决),那么这句话怎么转变为脚本呢?

新建一个demo文件,在里面写入:

echo "hello woirld!"

对,在脚本里就可以用双引号了,然后保存后,在终端执行以bash来执行:

[ICer@IC_EDA /home/ICer/gitee_path/ic_script_prj/hello_world]$bash ./demo
hello world!

或者将demo的文件属性改为可执行状态:

chmod a+x demo

然后就可以直接执行了:

[ICer@IC_EDA /home/ICer/gitee_path/ic_script_prj/hello_world]$./demo
hello world!

好的,到目前为止,第一个脚本执行成功了!

精通各种hello world!

perl

新建demo.pl,写入:

print "hello world!\n"

之后在终端键入:

[ICer@IC_EDA /home/ICer/gitee_path/ic_script_prj/hello_world]$perl demo.pl
hello world!

然后在demo.pl的首行写入并改为可执行属性:

#!/usr/bin/perlprint "hello world!\n"

执行脚本:

[ICer@IC_EDA /home/ICer/gitee_path/ic_script_prj/hello_world]$./demo.pl 
hello world!

首行的#!/usr/bin/perl是为这个脚本指定默认的执行语言。

python

#!/usr/bin/python3print("hello world!")

不要使用python,统一使用python3。

shell

#!/usr/bin/bashecho "hello world!"

通常来说shell默认值bash版本。

tcl

#!/usr/bin/tclshputs "hello world!"

make

新建Makefile,写入:

target:@echo "hello world!"

在终端键入make:

[ICer@IC_EDA /home/ICer/gitee_path/ic_script_prj/hello_world]$make
hello world!

awk

直接在终端键入:

[ICer@IC_EDA /home/ICer/gitee_path/ic_script_prj/hello_world]$echo 'hello world!' | awk '{print $0}'
hello world!

然后可以固化在makefile中:

target:@echo "hello world!" | awk '{print $0}'

VBA

打开excel,点击“开发工具” - “Visual Basic”,右键插入“模块”:

在模块内“插入” - “过程”:

之后在sub demo中写入:

Public Sub demo()Debug.Print "hello, world!"MsgBox "hello, world!", 3 + 48 + 256, "Demo"
End Sub

点击“运行”:

执行效果:

相关文章:

【ICer的脚本练习】“精通各种语言的hello world!“

系列的目录说明请见&#xff1a;ICer的脚本练习专栏介绍与全流程目录_尼德兰的喵的博客-CSDN博客 前言 这一节呢主要是检查一下Linux和win环境是不是能正常的支持咱们的脚本学习&#xff0c;所以来答应各种语言的hello world!&#xff0c;毕竟打印了就是学会了٩(๑❛ᴗ❛๑)۶…...

解决npm install报错: No module named gyp

今天运行一个以前vue项目&#xff0c;启动时报错如下&#xff1a; ERROR Failed to compile with 1 error上午10:19:33 error in ./src/App.vue?vue&typestyle&index0&langscss& Syntax Error: Error: Missing binding D:\javacode\Springboot-MiMall-RSA\V…...

Leetcode 面试题 17.01 不用加号的加法

设计一个函数把两个数字相加。不得使用 或者其他算术运算符。 示例: 输入: a 1, b 1 输出: 2 提示&#xff1a; a, b 均可能是负数或 0结果不会溢出 32 位整数 我的答案&#xff1a; 一、信息 1.设计一个函数把两个数相加 2.不得使用或者其他运算符 3.a,b均为负数或…...

一个 MySQL 数据库死锁的案例和解决方案

本文介绍了一个 MySQL 数据库死锁的案例和解决方案。 场景 生产环境出了一个偶现的数据库死锁问题&#xff0c;导致少部分业务处理失败。 分析特征之后&#xff0c;发现是多个线程并发执行同一个方法&#xff0c;更新关联的数据时可能会出现&#xff0c;把场景简化概括一下&…...

AMBEO 双声道空间音频现已迈进直播制作领域

图片来源&#xff1a;Unsplash&#xff0c;作者&#xff1a;Bence Balla-Schottner AMBEO 双声道空间音频现已迈进直播制作领域 为所有观众解锁更加身临其境的听觉体验 森海塞尔将功能强大的 AMBEO 双声道空间音频技术引入了广播电视直播应用领域&#xff0c;对所有体育赛事广…...

在VSCode上画UML的三个插件

2023年9月2日&#xff0c;周六晚上 因为写代理模式的博客时需要画UML&#xff0c;所以就在网上找了半天&#xff0c; 最后觉得VSCode上的这三个插件比较好用 目录 三个画UML的VSCode插件PlantUMLDraw.io IntegrationUMLet我个人推荐使用PlantUML 三个画UML的VSCode插件 Pla…...

Springboot - 1.什么是springboot

&#x1f440;Spring的核心模块 Spring Framework是一个功能强大的开源框架&#xff0c;用于构建Java企业级应用程序。它提供了多个核心模块&#xff0c;每个模块都提供不同的功能&#xff0c;用于解决应用程序开发中的各种问题。以下是Spring Framework的核心模块的全面解析&…...

学习微信小程序 Westore

最近&#xff0c;接到小程序需求&#xff0c;并且是在以前公司老项目上改造&#xff0c;打开项目&#xff0c;发现却不是我想象中的那样&#xff0c;不是上来就是 Page({})&#xff0c;而是create(store,{})&#xff0c;纳尼&#xff1f;&#xff1f;&#xff1f;这什么玩意&am…...

CentOS上使用Docker安装和部署kkFileView

&#x1f388;1 参考文档 kkFileView官方文档 &#x1f680;2 安装kkFileView 拉取Redis镜像。 docker pull keking/kkfileview启动docker容器。 docker run -it -d -p 8012:8012 keking/kkfileview --restart always解释&#xff1a; docker run redis # 从kkfileview镜像运行…...

Level-based Foraging 多智能体游戏仿真环境

游戏场景测试 参考链接&#xff1a; https://kgithub.com/semitable/lb-foraging...

LeetCode-53-最大子数组和-贪心算法

贪心算法理论基础&#xff1a; 局部最优推全局最优 贪心无套路~ 没有什么规律~ 重点&#xff1a;每个阶段的局部最优是什么&#xff1f; 题目描述&#xff1a; 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#…...

解决gitee仓库中 .git 文件夹过大的问题

最近&#xff0c;许多项目都迁移到gitee。使用的也越来越频繁&#xff0c;但是今天突然收到一个仓库爆满的提示。让我一脸懵逼。本文将详细为你解答&#xff0c;这种情况如何处理。 1、起因 我收到的报错如下&#xff1a; remote: Powered by GITEE.COM [GNK-6.4] remote: T…...

uniapp 开发小程序,封装一个方法,让图片使用线上地址

1.在main.js文件中&#xff0c;添加以下代码&#xff1a; 复制使用&#xff1a; // 图片使用网络地址 Vue.prototype.localImgSrc function(img){//项目的地址域名&#xff0c;例如百度return "https://baidu.cn/static/index/images/" img; }2.在页面中直接使用&…...

Android 12 源码分析 —— 应用层 三(SystemUIFactory及其Dependency解析)

Android 12 源码分析 —— 应用层 三&#xff08;SystemUIFactory及其Dependency解析&#xff09; 在上一篇文章中&#xff0c;介绍了SystemUI的启动流程&#xff0c;并且简单提及了Dagger2用来管理各个SystemUI中要用的依赖。而这部分代码就在&#xff1a;mContextAvailableC…...

考前冲刺上岸浙工商MBA的备考经验分享

2023年对于许多人来说都是不平凡的一年&#xff0c;历经三年的抗争&#xff0c;我们终于成功结束了疫情。而我也很幸运的被浙工商MBA项目录取&#xff0c;即将开始全新的学习生活。身为一名已在职工作6年的人&#xff0c;能够重回校园真是一种特别令人激动的体验。今天&#xf…...

XmlDocument.SelectNodes 不起作用

今天采用Xpath读取Xml节点&#xff0c;怎么都读不出。 问题分析&#xff1a; 错误代码如下&#xff1a; XmlDocument xmlD new XmlDocument();xmlD.PreserveWhitespace true;xmlD.LoadXml(xStr);xmlD.SelectNodes("job-scheduling-data/schedule/job");经排查 do…...

部署单点elasticsearch

部署elasticsearch 创建网络 因为我们还需要部署kibana容器&#xff0c;因此需要让es和kibana容器互联。这里先创建一个网络 docker network create es-net 拉取镜像 我们采用elasticsearch的7.12.1版本的镜像 docker pull elasticsearch:7.12.1 运行 运行docker命令&a…...

ElementUI浅尝辄止16:Tag 标签

用于标记和选择。 1.如何使用&#xff1f; 由type属性来选择tag的类型&#xff0c;也可以通过color属性来自定义背景色。<el-tag>标签一</el-tag> <el-tag type"success">标签二</el-tag> <el-tag type"info">标签三</e…...

Java虚拟机(JVM)框架

见&#xff1a;GitHub - eHackyd/Java_JVM: Java虚拟机(JVM)框架的学习笔记...

配置Publisher 的编译规则

步骤 1&#xff1a;创建ROS Package 使用以下命令创建一个新的ROS软件包&#xff1a; catkin_create_pkg my_publisher_package roscpp std_msgs步骤 2&#xff1a;编辑 CMakeLists.txt 文件 打开您的ROS软件包的 CMakeLists.txt 文件&#xff0c;通常位于软件包的根目录。您…...

【SpringBoot】接口实现:SpringBoot实现博客系统的文章列表页接口代码

以下是一个简单的Spring Boot博客系统的文章列表页接口代码示例&#xff1a; java RestController RequestMapping("/articles") public class ArticleController {Autowiredprivate ArticleService articleService;GetMapping("/")public List<Artic…...

如何使用SQL系列 之 如何在SQL中插入数据

简介 结构化查询语言&#xff0c;通常被称为SQL&#xff0c;在允许您将数据插入表中方面提供了极大的灵活性。例如&#xff0c;你可以使用VALUES关键字指定单独的行数据&#xff0c;使用SELECT查询从现有表中复制整组数据&#xff0c;以及以使SQL自动插入数据的方式定义列。 …...

【LeetCode题目详解】1281题 整数的各位积和之差 面试题 01.01. 判定字符是否唯一 python题解(作业一二)

本文章以python为例! 一、力扣第1281题&#xff1a;整数的各位积和之差 问题描述&#xff1a; 1281. 整数的各位积和之差 给你一个整数 n&#xff0c;请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。 示例 1&#xff1a; 输入&#xff1a;n 234 输出…...

1.12 进程注入ShellCode套接字

在笔者前几篇文章中我们一直在探讨如何利用Metasploit这个渗透工具生成ShellCode以及如何将ShellCode注入到特定进程内&#xff0c;本章我们将自己实现一个正向ShellCodeShell&#xff0c;当进程被注入后&#xff0c;则我们可以通过利用NC等工具连接到被注入进程内&#xff0c;…...

MySQL 日志系统

重要日志模块 日志文件bin logredo log**关于循环写入和擦除的checkpoint 规则**redo log 怎么刷入磁盘的 binlog 和 redo log 有什么区别&#xff1f;undo log 日志文件 错误日志&#xff08;error log&#xff09;&#xff1a; 错误日志文件对 MySQL 的启动、运行、关闭过程进…...

LeetCode刷题---Two Sum(一)

文章目录 &#x1f340;题目&#x1f340;解法一&#x1f340;解法二&#x1f340;哈希表 &#x1f340;题目 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每…...

算法通关村第十七关——插入区间

LeetCode435,给定一个区间的集合&#xff0c;找到需要移除区间的最小数量&#xff0c;使剩余区间互不重叠。 示例1&#xff1a; 输入&#xff1a;interva1s[[1,3],[6,9]],newInterva1[2,5] 输出&#xff1a;[[1,5]&#xff0c;[6,9]] 解释&#xff1a;新区间[2,5]与[1,3]重…...

Jenkins java8安装版本安装

一、首先准备Jenkins、Jdk8、Tomcat9安装包 根据Jenkins官网介绍&#xff0c;Jenkins支持Java8的版本如下&#xff1a; 我们选择2.164版本进行安装&#xff0c;根据版本号支持输入下载地址&#xff1a;https://archives.jenkins.io/war/2.164/jenkins.war&#xff0c;进行下载…...

线上问诊:数仓开发(二)

系列文章目录 线上问诊&#xff1a;业务数据采集 线上问诊&#xff1a;数仓数据同步 线上问诊&#xff1a;数仓开发(一) 线上问诊&#xff1a;数仓开发(二) 文章目录 系列文章目录前言一、DWS1.最近1日汇总表1.交易域医院患者性别年龄段粒度问诊最近1日汇总表2.交易域医院患者…...

Ansible自动化运维工具(三)

目录 Ansible 的脚本 --- playbook 剧本 ​编辑2.vars模块实战实例 3.指定远程主机sudo切换用户 4.when模块实战实例 5.with_items迭代模块实战实例 6.Templates 模块实战实例 &#xff08;1&#xff09;先准备一个以 .j2 为后缀的 template 模板文件&#xff0c;设置引用…...

对一个网站怎么做攻击测试/新网站推广方法

for..in可以将JavaScript中的对象的属性依次循环出来&#xff0c;当for..in作用于数组时得到的是该元素的下标&#xff0c;且该下标是一个String对象而不是一个Number对象。(注意&#xff1a;for..in实际上是历史遗留问题&#xff0c;其遍历的实际上是对象的属性&#xff0c;之…...

CSS3网站建设/0元入驻的电商平台

2019独角兽企业重金招聘Python工程师标准>>> 闲话不多说&#xff0c;直接上代码&#xff01; 1、第一步&#xff0c;首先搭建如下架构&#xff0c;其中&#xff0c;annotation中放置自己编写的注解&#xff0c;主要包括service controller qualifier RequestMapping…...

网站域名使用怎么做分录/全球疫情最新数据消息

1 在linux命令行底下通过python -V查看python版本号suiycsuiyc-A76GMV:~/sycworkspace/simple-sample$ python -V 2>&1 | awk {print $2}输出结果示例&#xff1a;2.7.32 直接在命令行中输入python示例&#xff1a;suiycsuiyc-A76GMV:~/sycworkspace/simple-sample$ pyt…...

win10做的网站其他电脑访问不了/现在有什么推广平台

上下文 上下文&#xff1a;相当于一个容器&#xff0c;保存了 Flask 程序运行过程中的一些信息。 Flask中有两种上下文&#xff0c;请求上下文和应用上下文 请求上下文(request context) 思考&#xff1a;在视图函数中&#xff0c;如何取到当前请求的相关数据&#xff1f;比如&…...

武汉网站服务/上海网络推广招聘

1、下载MongoDb https://www.mongodb.com/try/download/community 安装很简单、基本都是下一步。安装好需要进行环境变量的配置、在path里面吧对应的bin路径加入到里面D:\mongodb-win32-x86_64-2012plus-4.2.23\bin 2、集成 配置YML spring:data:mongodb:host: localhostport:…...

老酒街 wordpress/seo成功案例分析

大家在做字母索引的时候常常会用到SectionIndexer这个类&#xff0c;里面有2个重要的方法 1. getSectionForPosition&#xff08;&#xff09;通过该项的位置&#xff0c;获得所在分类组的索引号 2. getPositionForSection() 根据分类列的索引号获得该序列的首个位置 g…...