拷贝

使用Shell远程给Linux安装JDK

对着背影说爱祢 提交于 2019-12-05 18:19:27
使用Shell远程给Linux安装JDK #1.下载JDK (不同版本JDK更换链接即可) wget命令下载的文件会在当前目录下,所以如果在下载前最好先 cd 到想把JDK安装的位置,如果没有,可以先创建相应目录 1 wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u60-b27/jdk-8u60-linux-x64.tar.gz #2.安装JDK 1 2 3 4 5 <!-- 解压文件即可 --> tar -zxvf jdk-8u60-linux-x64.tar.gz <!-- 如果需要拷贝文件,下变为相应拷贝命令,不需要拷贝,忽略下边那内容 --> cp -r jdk1.8.0_60/ /usr/lib/jvm/jdk1.8.0_60/ #3.配置环境变量 3.1在/etc/profile文件中加入下边配置 最主要的是 JAVA_HOME 的配置 1 2 3 export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60/ export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA

java的浅拷贝和深拷贝

柔情痞子 提交于 2019-12-05 17:01:24
引用网上资料的定义: 浅拷贝:将对象中的所有字段复制到新的对象中。其中, 值类型 字段被复制到新对象中后,在新对象中的修改不会影响到原先对象的值。而新对象的 引用类型 则是原先对象引用类型的引用,不是引用自己对象本身 深拷贝:同样也是拷贝,但是与浅拷贝不同的是,深拷贝会对 引用类型 重新在创新一次(包括 值类型 ),在新对象做的任何修改都不会影响到源对象本身。 加上自己的一点理解,深拷贝应该与c++中函数的&功能类似。 来源: https://www.cnblogs.com/powerkeke/p/11934870.html

python学习day07

大城市里の小女人 提交于 2019-12-05 16:35:43
一、深浅拷贝 str+int+bool #深浅拷贝相同a = 'alex'b = copy.copy(a)c = copy.deepcopy(b)print(a,b) list+set+dict 深拷贝在嵌套拷贝才有意义 浅拷贝:只拷贝第一层 深拷贝:拷贝嵌套层次中的所有可变类型 二、文件操作 # 打开文件a = open('log.txt','r/w/a...',encoding='utf-8')# 文件操作b = a.read()# 关闭文件a.close() r(只读) ----->r+ w(只写,先清空文件,一般用于创建文件) ----->w+ a (追加) ----->a+ 功能: readlines data = open('a.txt','r',encoding='utf-8')for i in data.readlines(): i = i.strip() print(i)data.close() 来源: https://www.cnblogs.com/cqxiayu/p/11933515.html

深浅拷贝

你。 提交于 2019-12-05 14:39:50
深浅copy 先问问大家,什么是拷贝?拷贝是音译的词,其实他是从copy这个英文单词音译过来的,那什么是copy? copy其实就是复制一份,也就是所谓的抄一份。深浅copy其实就是完全复制一份,和部分复制一份的意思。 1,先看赋值运算。 l1 = [1,2,3,['jason','egon']] l2 = l1 l1[0] = 111 print(l1) # [111, 2, 3, ['jason', 'egon']] print(l2) # [111, 2, 3, ['jason', 'egon']] l1[3][0] = 'kevin' print(l1) # [111, 2, 3, ['kevin', 'egon']] print(l2) # [111, 2, 3, ['kevin', 'egon']] 对于赋值运算来说,l1与l2指向的是同一个内存地址,所以他们是完全一样的,在举个例子,比如张三李四合租在一起,那么对于客厅来说,他们是公用的,张三可以用,李四也可以用,但是突然有一天张三把客厅的的电视换成投影了,那么李四使用客厅时,想看电视没有了,而是投影了,对吧?l1,l2指向的是同一个列表,任何一个变量对列表进行改变,剩下那个变量在使用列表之后,这个列表就是发生改变之后的列表。 2,浅拷贝copy #同一代码块下: l1 = [1, 'jason', True, (1

shutil

ⅰ亾dé卋堺 提交于 2019-12-05 10:05:54
shutil模块提供了许多关于文件和文件集合的高级操作,特别提供了支持文件复制和删除的功能。(将文件内容拷贝到另一个文件中) copyfileobj(fsrc, fdst, length=16*1024) : 将fsrc文件内容复制至fdst文件,length为fsrc每次读取的长度,用做缓冲区大小 fsrc: 源文件 fdst: 复制至fdst文件 length: 缓冲区大小,即fsrc每次读取的长度 shutil.copyfileobj(open('bbb.txt', 'r', encoding='utf-8'), open('new_bbb.txt', 'w', encoding='utf-8')) copyfile(src, dst) : 将src文件内容复制至dst文件(拷贝文件) src: 源文件路径 dst: 复制至dst文件,若dst文件不存在,将会生成一个dst文件;若存在将会被覆盖 follow_symlinks:设置为True时,若src为软连接,则当成文件复制;如果设置为False,复制软连接。默认为True。Python3新增参数 shutil.copyfile('bbb.txt', 'new_66.txt') copymode(src, dst) : 将src文件权限复制至dst文件。文件内容,所有者和组不受影响(仅拷贝权限。内容、组、用户均不变)

[笔记]C++拷贝构造和移动构造

馋奶兔 提交于 2019-12-05 09:57:22
一、拷贝构造   如果一个构造函数的 第一个参数是自身类类型的引用 ,且任何 额外参数都没有默认值 ,则此构造函数是拷贝构造函数。(《C++Primer,第五版》) class Foo { public : Foo(); Foo(const Foo&); //拷贝构造函数 Foo& operator=(const Foo&); //拷贝赋值运算符 };   类的成员中有指针时,使用深拷贝。 #include <iostream> using namespace std; class Foo { public: Foo() { pInt = new int; *pInt = 1; } Foo(const Foo&)= default; //拷贝构造函数 Foo& operator=(const Foo&) = default; //拷贝赋值运算符 int* pInt; }; //浅拷贝,foo1和foo2中的pInt指向同一块内存地址 Foo foo1; Foo foo2(foo1); //深拷贝 class Cop { public: Cop() { pInt = new int; *pInt = 2; } Cop(const Cop& cop) { pInt = new int; *pInt = *(cop.pInt); } int* pInt; }; //深拷贝

C# 中的浅拷贝与深拷贝

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-05 09:51:23
Ø 简介 在 C# 中分为两种数据类型,值类型和引用类型。我们知道,值类型之间赋值是直接将值赋值给另一个变量,两个变量值的改变都互不影响;而引用类型赋值则是将引用赋值给另一个变量,其中一个变量中的成员值被改变,都会影响到另一个变量。 好,以上论述不是我们今天要讨论的重点,只是起抛砖引玉的作用。现在假设有这样一个需求,我现在有一个对象(别想歪了,不是女朋友 ~ ),而我不想使用 new 去创建这个类型的另一个对象,该如何实现呢?这时我们会立马想到使用 反射 去创建这个对象,然后再逐个属性进行赋值。 OK ,没问题,其实这一操作正是对象拷贝中深拷贝的一种体现。 那什么是浅拷贝与深拷贝呢? 首先,我们说一下对象拷贝。对象拷贝,就是将一个现有的对象,克隆为一个全新的对象, 它们的引用是相互独立的 。 浅拷贝: 是指在对象拷贝的过程中,成员中的值类型进行逐一赋值,而引用类型只赋值引用,并不会创建新的对象实例, 结果它们指向的是同一个引用 。 深拷贝: 其实是对引用类型而言的,它除了会对值类型赋值;还可以将引用类型创建新的实例, 结果它们指向的是不同引用 。说还可以的意思是,其实深拷贝是需要我们写代码去实现的。 好了,理论就是这么多。下面进入实战,主要包括以下几点: 1. 对象拷贝的用途 2. 实现浅拷贝 3. 实现深拷贝 1. 对象拷贝的用途 我们学习它,当然要知道它能干嘛是吧? 说实话

docker--docker 容器操作

六眼飞鱼酱① 提交于 2019-12-05 06:38:41
6 docker 容器操作 容器是 docker 镜像的运行时实例。 6.1 创建容器 docker run [options] image command [ARG...]options选项: ‐i、‐t、‐d、‐‐name‐i:交互式容器‐t:tty,终端‐d:后台运行,并且打印容器idsh /usr/local/tomcat7/bin/startup.sh(shell脚本 #/bin/bash py rb lua)Linux:根的进程:/bin/bash tree/xxx /yyy eg:创建的容器名称不能重复创建交互式容器:创建后进去容器docker run -i -t --name=c1 centos /bin/bash 交互式容器省写docker run -it --name c2 centos /bin/bash创建守护式容器:后台运行,创建后打印id,并未进去容器docker run -itd --name c3 centos /bin/bash 6.2 进入容器 方式一:docker attach 容器名称/id (ps:exit,容器停止) eg:docker attach u3方式二:docker exec ‐it 容器名称/id /bin/bash (ps:exit,容器不会停止)eg:docker exec ‐it c3 /bin/bash 6.3

Python深拷贝与浅拷贝区别

大城市里の小女人 提交于 2019-12-05 05:03:34
可变类型 如list、dict等类型,改变容器内的值,容器地址不变。 不可变类型 如元组、字符串,原则上不可改变值。如果要改变对象的值,是将对象指向的地址改变了 浅拷贝 对于可变对象来说,开辟新的内存空间存储容器对象,但不开辟新空间存储容器的值,容器内部值的对象仍然指向原来的地址。即只对外层对象进行拷贝 不可变对象则将拷贝对象的值进行拷贝 深拷贝 对于可变对象,既开辟新的内存空间存储容器对象,也开辟新空间存储容器的值。也就是,既拷贝容器对象,也拷贝容器对象内部的值对象 不可变对象则将拷贝对象的值进行拷贝 下面这张我自己画的图可以更直观地理解Python中深拷贝与浅拷贝的区别 来源: https://www.cnblogs.com/mumuxin-gv/p/11908385.html