变量

Linux下SHELL的PS1变量简介

我们两清 提交于 2020-02-28 12:35:52
Linux下SHELL的PS1变量简介 Linux环境变量中PS1是很重要的环境变量: PS(Prompt Sign): 是指命令提示符,例如在Fedora 12的终端下:[liutao@liutao ~]$ ,在设定PS1环境变量时,我们需要用到预设的一些特殊符号来设定PS1,下面是鸟哥书上关于BASH的特殊变量。 o \d :代表日期,格式为 Weekday Month Date,例如 "Mon Aug 1" o \H :完整的主机名称。举例来说,鸟哥的练习机 linux.dmtsai.tw ,那么这个主机名称就是 linux.dmtsai.tw www.2cto.com o \h :仅取主机名称的第一个名字。以上述来讲,就是 linux 而已, .dmtsai.tw 被省略。 o \t :显示时间,为 24 小时格式,如: HH:MM:SS o \T :显示时间,12 小时的时间格式! o \A :显示时间,24 小时格式, HH:MM o \u :目前使用者的账号名称; o \v :BASH 的版本信息; o \w :完整的工作目录名称。家目录会以 ~ 取代; o \W :利用 basename 取得工作目录名称,所以仅会列出最后一个目录名。 o # :下达的第几个指令。 o $ :提示字符,如果是 root 时,提示字符为 # ,否则就是 $ 。 Fedora 12下

JAVA 基础 /第九课: 变量 / JAVA中 什么是变量

為{幸葍}努か 提交于 2020-02-28 12:00:32
2018-03-07 一、什么是变量 变量的定义是: 用来命名一个数据的标示符 1949 这是一个数字,代表某年 如果要命名这个数字,在java里就会写成: int year = 1949; int 是数据类型,表示是整数 year 是一个标识符 = 是赋值操作符 1949 是一个数字类型的值 ; 表示该行结束 year 这个标识符就是一个变量,它代表1949这个值 public class HelloWorld { public static void main(String[] args) { int year = 1949; } } 一个变量的类型,决定了该变量可以包含什么样的值。 Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字。 这八种基本类型分别是: 整型 (4种) 字符型 (1种) 浮点型 (2种) 布尔型(1种) 1.整型 整型变量用于存放整数 byte   short   int   long 区别在于不同类型的整型,最大值,最小值不一样 如果试图给byte类型的变量赋予超出其范围的值,就会产生编译错误,这个时候就需要进行 类型转换 ,在后面的章节会讲解 public class HelloWorld{ public static void main(String[] args){ byte b = 1; short s = 200; int

如何清除stringstream变量?

馋奶兔 提交于 2020-02-28 11:06:42
我已经尝试了几件事, std::stringstream m; m.empty(); m.clear(); 两者都不起作用。 #1楼 这些不会在gnu c ++中丢弃stringstream中的数据 m.str(""); m.str() = ""; m.str(std::string()); 以下确实为我清空了字符串流: m.str().clear(); #2楼 无论使用哪种编译器,这都应该是最可靠的方法: m=std::stringstream(); #3楼 我的2美分: 这似乎在xcode和dev-c ++中对我有用,我有一个菜单形式的程序,如果按照用户的要求迭代执行,它将填充一个stringstream变量,该变量在第一次执行该代码时就可以正常工作运行,但不会在用户下次运行相同的代码时清除字符串流。 但是下面的两行代码最终每次都会在填充字符串变量之前清除stringstream变量。 (2小时的反复试验和Google搜索),顺便说一句,单独使用每一行都无法解决问题。 //clear the stringstream variable sstm.str(""); sstm.clear(); //fill up the streamstream variable sstm << "crap" << "morecrap"; #4楼 m.str(""); 似乎有效。 #5楼

Python学习-函数,函数参数,作用域

坚强是说给别人听的谎言 提交于 2020-02-28 10:23:16
一、函数介绍 函数定义:函数时组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 我们已经知道python提供了许多内建函数,print(), type()等。我们也可以自己创建函数,这被叫做用户自定的函数。 定义一个函数 定义是遵守的简单的规则: 以 def 关键字开头,后接函数标识符名称和圆括号(),然后以冒号 : 结尾(第一行也叫函数头) 圆括号中放入参数名(形参),如果没有,可以留空 函数头的下一行,缩进4个空格,开始写函数体 函数体中可以有 return [表达式] 语句,返回一个值给调用者,如果没有return语句,默认返回 None 一个自定义函数实例: # 打印两次传入的变量的值 # 此函数没有return语句,返回None给调用者 def print_twice(name): #函数头 形参:name print('你好', name) #函数体 print('你好', name) 定义一个函数会创建一个函数对象(function object),其类型是funtion: print(print_twice) print(type(print_twice)) #输出结果: <function print_twice at 0x10217df28> <class 'function'> 函数调用: 调用方式,函数名(),如果函数有参数,将实际参数(实参

诡异的并发之可见性

自古美人都是妖i 提交于 2020-02-28 09:26:45
我们都知道,随着祖国越来越繁荣昌盛,随着科技的进步,设备的更新换代,计算机体系结构、操作系统、编译程序都在不断地改革创新,但始终有一点是不变的(我对鸭血粉丝的热爱忠贞不渝):那就是下面三者的性能耗时:CPU < 内存 < I/O 但也正因为这些改变,也就在并发程序中出现了一些诡异的问题,而其中最昭著的三大问题就是:可见性、有序性、原子性。 今天我们就主要来学习一下三者中的可见性。 零、可见性的阐述 可见性 的定义是:一个线程对共享变量的修改,另外一个线程能够立刻看到。 在单核时代,所有线程都在一个CPU上执行,所以一个线程的写,一定是对其它线程可见的。就好比,一个总经理下面就一个项目负责人。 此时,项目经理查看到任务G后,分配给员工A和员工B,那么这个任务的进度就能随时掌握在项目经理手中了;每个员工都能从项目经理处得知最新的项目进度。 而在多核时代后,每个CPU都有自己的缓存,这就出现了可见性问题。 此时,两个项目经理同时查看到任务G后,各自分配给自己下属员工,那么这个任务的进度就只能掌握在各自项目经理手中了,因为所有员工的工作进度并不是汇报给同一个项目经理;那么,每个员工只能得知自己项目组员工的工作进度,并不能得知其他项目组的工作进度。所以,当多个项目经理在做同一个任务时,就可能出现任务配比不均、任务进度拖延、任务重复进行等多种问题。 总结上面的例子来讲,就是因为进度的不及时更新

Jmeter-后置处理器(Json extractor)

雨燕双飞 提交于 2020-02-28 09:02:13
后置处理器-json extractor 概念:顾名思义,提取json响应的数据中提取数据; 步骤:sampler-后置处理器-jsonextractor 1.提取单个参数 1.Variable name :自定义参数名,引用的时候${} 格式 2.Json path expression:json表达式,根据上面的json,表达式为: $.errorCode 3.下面的接口参数中引用的时候直接使用${Variable name} 分析这段json: 1. 上面我们要获取errorCode:格式就是$.errorCode 2. 如果我要获取data{}里的orderNo怎么写呢:首先分析json提取格式是【$.】后面跟参数,OrderNo 是包在data里,data 被包在result里,所以我们一层一层的定位:$.result.data[0].orderNo ->为什么要加[0]? 首先data 下面不止一段json,可能有很多,我们现在定位的是第一段,它是数组,所以取第一个下标就是[0],如果取第二个下标就是[1]以此类推。 2提取多个参数 1. 获取多个变量,变量名要起多个自定义变量,用分号隔开 2. Json path expression:获取json的表达式,获取几个就写几条,用分号隔开,并且与上面的变量名是对应的; 3. Default values:查看帮助文档

Clean Code 代码检查清单

旧巷老猫 提交于 2020-02-28 08:40:36
注释: 不恰当的信息:注释只应该描述有关代码和设计的技术性信息。 废弃的注释:过时、无关或不正确的注释就是废弃的注释。 冗余注释:注释应该谈及代码自身没提到的东西 糟糕的注释:值得编写的注释,也值得好好写。 注释掉的代码 环境: 需要多步才能实现的构建:构建系统应该是单步的小操作。 需要多步才能做到的测试:应当能够发出单个指令就可以运行全部单元测试。能够运行全部测试是如此基础和重要,应该快速、轻易和直截了当地做到。 函数 过多的参数,没参最好 输出参数:输出参数就违反直觉。如果函数非要修改什么东西的状态不可,就修改它所在对象的状态好了。 标识参数:布尔值参数大声宣告函数做了不止一件事。 死函数:永不被调用的方法应该丢弃。别害怕删除函数。 一般性问题: 一个源文件中存在多种语言:理想的源文件包括且只包括一种语言,应该尽力减少源文件中额外语言的数量和范围。 明显的行为未被实现:最小惊异原则--函数或类应该实现其他程序员有理由期待的行为。 不正确的边界行为:别依赖直觉。追索每种边界条件,并编写测试。 忽视安全:关闭失败测试、告诉自己过后再处理,这和假装刷信用卡不用还钱一样坏。 重复 :核心原则。每次看到重复代码,都代表遗漏了抽象。 在错误的抽象层级上的代码:只与细节实现有关的常量、变量或工具函数不应该在基类中出现。 基类依赖于派生类:例外情况是派生类数量严格固定。 信息过多

电脑小白和ta的小白电脑——JAVA开发环境

心已入冬 提交于 2020-02-28 07:15:35
JAVA开发环境的搭建有一点点复杂,不过一步一步来一般不会出错。 (一)下载JDK 首先我们需要下载java开发工具包JDK,可以通过官网下载: http://www.oracle.com/technetwork/java/javase/downloads/index.html 。 1、官网下载流程 在下载页面中你需要选择接受许可,并根据自己的系统选择对应的版本,这里以 Window 64位系统为例: 2、官网太慢? 这里是我安装的Jdk-9.0.4版本↓ 网盘链接: https://pan.baidu.com/s/1ZImd1e_AilSA3CI76hm0VQ 提取码:3xgy (二)安装JDK 下载后JDK的安装根据提示进行,还有安装JDK的时候也会安装JRE,一并安装就可以了。 安装过程中可以自定义安装目录等信息,例如我安装在了E:\Java\jdk-9.0.4。记住你的安装目录,后面配置环境变量要找它的哟~ 万一默认了安装目录,莫方!我猜会在C:\Program Files\Java\jdk-9.0.4。 (三)配置环境变量 1、安装完成后,右击"我的电脑",点击"属性",选择"高级系统设置"。 2、选择“高级”选项卡,点击“环境变量”。 3、在"系统变量"中设置3项属性 (1)新建变量:JAVA_HOME 变量值:E:\Java\jdk-9.0.4。

Linux的Bash Shell详解

自闭症网瘾萝莉.ら 提交于 2020-02-28 07:10:54
一、Bash Shell概述   1.什么是bash   bash是Bourne Again Shell的简称,是从unix系统中的sh发展而来的,是用户和Linux内核交互的工具,用户通过bash操作内核完成系统的使用和管理。   2.shell的种类   /bin/sh(已经被/bin/bash替代)   /bin/bash(默认的shell)   /bin/ksh(源自贝尔实验室,兼容bash)   /bin/tcsh(整合C shell,功能更为强大)   /bin/csh(已经被tcsh取代)   /bin/zsh(源自ksh功能更为强大)   每种shell的功能比较类似,但是语法会稍有不同。   3.bash的历史和发展      二、Bash Shell的变量概述   1.变量是代表一些值的符号。   2.可以通过变量来设置shell或者其他程序。   3.变量存在于内存中。   4.Linux有自定义变量(local)和环境变量(environment)。   5.自定义变量和环境变量的作用范围不同。   6.可以使用以下指令查看所有变量     set可以查看所有的变量     env只能查看环境变量 三、Bash Shell的设置方式   1.通过自定义变量设置     variable=value来设置     $variable来取得变量的值