注意 下面有些组合键(尤其是对于那些使用了 Alt 键的组合键)可能会被图形用户界面识别为其它功能。 但当使用虚拟控制台时,所有的组合键应能正常工作。...# 会出现如下结果: ls ls-output.txt # 自动补齐机制会自动将参数补全。 观察 shell 是如何补齐这一行的。...1.搜索历史命令 (1)查看历史记录列表 任何情况下,我们都可以通过如下命令查看历史记录的内容列表。 history | less bash 默认会保存用户最近使用过的 500 个命令。...② 支持递增地搜索 bash 也支持以逆向递增的方式搜索历史记录(也就是说,当搜索历史记录时,随着输入字符数的增加,bash 会相应地改变搜索范围)。...重复最后一个执行的命令(按 向上箭头键 再按 Enter 键也可以实现相同的功能,而且操作更简单)。 !number 重复历史记录中第 number 行的命令。 !
为什么要使用vim?...第一种:命令模式,当我使用“vim myfile”命令打开myfile这个文件时就处于命令模式,屏幕左下角为文件名(myfile),1L 表示本文件有1 行,26C 表示此文件有26 个字符。...在输入模式下,屏幕的左下方会出现INSERT (插入)字样。在输入状态下,用户可以输入文本的内容。...:w [filename] 将编辑的数据储存成另一个档案(类似另存新档) :r [filename] 在编辑的数据中,从指定的文件读取数据并加到光标所在行后面 :n1,n2 w [filename] 将...基本没什么问题,但是如果是一个我们需要执行指定工作的shell脚本就会出现问题,因为linux不认识这种符号的含义,就会导致shell脚本无法执行。
Ctrl-P 或上箭头键 后向搜索命令历史中以当前输入的文本开头的命令 Ctrl-N 或下箭头键 前向搜索命令历史中以当前输入的文本开头的命令 Ctrl-R 按行读取的反向历史搜索(部分匹配...)的GUI控制台。...此外,调试器还可以为代码开发工作提供帮助,尤其是当你想要设置断点或对函数、脚本进行单步调试以查看各条语句的执行情况时。...但是这并不是一个非常精确的结果,如果你对相同的语句多次执行%time的话,就会发现其结果是会变的。...(亲测真的会变233看下图) 为了得到更为精确的结果,需要使用魔术函数%timeit,对于任意语句,它会自动多次执行以产生一个非常精确的平均执行时间。
使用VIM,你就不用频繁的在箭头键和字母键之间移来移去了,这会节省你很多时间。当你在命令模式时,你可以用h,j,k,l来分别实现左,下,上,右箭头的功能。...(比如10G就是到第10行) gg:到文件首 H:移动光标到屏幕上面 M:移动光标到屏幕中间 L:移动光标到屏幕下面 *:读取光标处的字符串,并且移动光标到它再次出现的地方。.../text:从当前光标处开始搜索字符串text,并且到达text出现的地方。必须使用回车来开始这个搜索命令。如果想重复上次的搜索的话,按n。 ?text:和上面类似,但是是反方向。...y3" 将会拷贝从当前光标到第三个出现的引号之间的内容到剪贴板。 数字是扩展motion命令作用域非常有效的方法。 记录宏 有时候,你会发现你自己在文章的每段或者每行都重复相同的一系列动作。...当 “n” 省略时,被默认为零。当 “m” 省略时,被默认为无限大。当 “,m” 省略时,就表示重复正好 “n” 次。
于是就出现了同一张票被卖了两次的情况。 所以数据库的 CURD 应该满足什么属性能解决上面的问题?...可重复读【Repeatable Read】: 这是 MySQL 默认的隔离级别,它确保同一个事务,在执行中,多次读取操作数据时,会看到同样的数据行。但是会有幻读问题。...;select @@tx_isolation; 在此次登录时默认读取全局的隔离级别,然后拷贝一份给自己,它的生命周期是在当我们开始登录到退出客户端。...但是,一般的数据库在可重复读情况的时候,无法屏蔽其他事务 insert 的数据,为什么呢?...因为隔离性实现是对数据加锁完成的,而 insert 待插入的数据因为并不存在,那么一般加锁无法屏蔽这类问题,所以会造成虽然大部分内容是可重复读的,但是 insert 的数据在可重复读情况被读取出来,导致多次查找时
IPython 发展到现在,它不仅仅只是一个加强版的 Python shell 了,它集成了 GUI 控制台,这可以让你直接进行绘图操作;它还有一个基于 Web 的交互式笔记本和一个轻量级的快速并行的计算引擎...上下箭头键,快速输入历史命令 当某条命令或代码需要反复输入的时候,不必每次都手动敲一遍,只需要使用上箭头键既可自动补全上一条命令;此时再继续摁上箭头键是上上条命令。...如果某个命令需要摁很多次上箭头键才能找到,此时只需要输入那条命令的前几个字母然后再摁上箭头键,即可只筛选符合前几个字母的命令。...删除此行光标之后的所有内容 Ctrl+L 清屏(Mac 下 Cmd+K 也可以) 三、调试代码 代码发生异常后启动调试器 在代码发生异常后,输入 %debug 命令会启动调试器并自动跳转到“事发地点”:...这条命令如果再添加一个指定行号的选项(-b)即可在启动调试器时设置一个断点,例如: ?
开启事务的话,建立一次连接 :控制台输出Fetched SqlSession的字样 没开启事务的话,建立三次连接 :控制台输出Creating a new SqlSession的字样 为什么会这样呢,就是因为...我们经常说的事务 假如说,当我们有一个线程A来执行此方法时,发现此方法开启了事务,而事务,又是基于数据库Connection连接的,这个事务中有三个操作数据库的dao方法,如果想用一个事务来管三个操作...A事务对数据库的操作对于B事务来说,就不是透明的,事务B会读取事务A改后的数据在进行操作 具体详情可以看这篇文章 :京东面试官问我:“聊聊MySql事务,MVCC?”...,避免不了这种情况 开启事务后,为什么三个dao方法可以获得同一个Connection?...spring是通过 ThreadLocal 来保证同一个线程在其生命周期中,当多次操作数据库的时候(很多个dao),每次都可以获得同一个数据库连接,为什么要确保是同一个数据库连接?
,李四再查看,发现自己的账户没有转入的钱,只能当冤大头了(笑) 2、不可重读读: 在同一个事务下,多次读取同一个记录但返回的数据不一样(这个是针对:更新操作)。...、幻读: 在同一个事务中,多次读取的数据数目前后不一致(这个主要是针对: 添加和删除操作)。...在事务中执行不加锁的select操作时,会直接从“缓存”中拿数据;在事务中执行增删改时,会更新undo log中影响的数据行的信息,而若在第一次查询和更新之间的时间范围内,有其他事务提交了插入数据的操作...,且更新时的条件覆盖了插入的数据,则会导致幻读;而对查询语句加锁,则会直接从库中查数据(即当前读),但加锁查询并不会更新快照。...四: 总结 从上面实际的案例中我们发现,在并发情况下数据库会因为不同的隔离级别而出现不同的问题,所以我们要根据实际情况去设置数据库的隔离级别(但是一般是使用数据库默认的,除非有特殊要求),千里之行始于足下
技巧3:屏幕协作 来自产品工程的高级维护用户 David 打电话说:“为什么我不能在您部署的这些新机器上编译 supercode.c”。 您会问他:“您运行的是什么机器?”...到达如图 3 所示的屏幕时,在图 3 中所示的参数后追加数字 1 即可: 图 3. 在参数后追加数字 1 ? 然后按 Enter 和 B,内核会启动到单用户模式。...手动填充这样的文件有可能会创建重复的 IP 地址或主机名,因此这是使用内置命令行消除用户错误的好例子。请注意,这是在 bash shell(大多数 Linux 发行版的默认值)内完成的。...这个命令会导致以下情况中的一种: 如果所有节点(n001 到 n200)拥有相同的内存大小,则只显示一个数字。这个数字就是每个操作系统看到的内存大小。...技巧9:控制台侦察 有些软件会向控制台输出错误消息,而控制台不一定会显示在 SHH 会话中。使用 vcs 设备可以进行检查。
03 屏幕协作 来自产品工程的高级维护用户 David 打电话说:“为什么我不能在您部署的这些新机器上编译 supercode.c”。 您会问他:“您运行的是什么机器?”...到达如图 3 所示的屏幕时,在图 3 中所示的参数后追加数字 1 即可: 图 3. 在参数后追加数字 1 然后按 Enter 和 B,内核会启动到单用户模式。...手动填充这样的文件有可能会创建重复的 IP 地址或主机名,因此这是使用内置命令行消除用户错误的好例子。请注意,这是在 bash shell(大多数 Linux 发行版的默认值)内完成的。...这个命令会导致以下情况中的一种: 如果所有节点(n001 到 n200)拥有相同的内存大小,则只显示一个数字。这个数字就是每个操作系统看到的内存大小。...09 控制台侦察 有些软件会向控制台输出错误消息,而控制台不一定会显示在 SHH 会话中。使用 vcs 设备可以进行检查。
技巧 3:屏幕协作 来自产品工程的高级维护用户 David 打电话说:“为什么我不能在您部署的这些新机器上编译 supercode.c”。 您会问他:“您运行的是什么机器?”...图 2:准备编辑内核行 再次使用箭头键突出显示以 kernel 开始的行,按 E 编辑内核参数。到达如图 3 所示的屏幕时,在图 3 中所示的参数后追加数字 1 即可: ? 图 3....手动填充这样的文件有可能会创建重复的 IP 地址或主机名,因此这是使用内置命令行消除用户错误的好例子。请注意,这是在 bash shell(大多数 Linux 发行版的默认值)内完成的。...这个命令会导致以下情况中的一种: 1、如果所有节点(n001 到 n200)拥有相同的内存大小,则只显示一个数字。这个数字就是每个操作系统看到的内存大小。...技巧 9:控制台侦察 有些软件会向控制台输出错误消息,而控制台不一定会显示在 SHH 会话中。使用 vcs 设备可以进行检查。
对于事务,我们结合真实场景的列子,当我们在进行转一笔钱时,刚开始我们余额是500元,我们开一个会员。...为什么事务要有隔离性 ,当我们有多个事务的出现的时候,就会出现 脏读,不可重复读,幻读的问题,为了解决这几个问题于是隔离级别就站出来了。...不可重复读:一个事务读取同一条记录2次,得到的结果不一致 这也就是我们 在一个事务中和数据库创建了多次会话,有update 和 select 语句。比如说先进行更新,然后又进行读取。...读取的数据是 已经提交的数据,不是他第一次读取到的数据。产生不一致的情况。 上面也描述了,为了解决这些问题,隔离别站出来了,那我们再细细品一下隔离级别。...其他事物读取到的都是修改事务之前的数据 可重复读是指,一个事务执行过程中看到的数据,总是跟这个事务在启动时看到的数据是一致的。当然在可重复读隔离级别下,未提交变更对其他事务也是不可见的。
如: A事务修改了C记录的年龄,B事务同时读取C记录的年龄,这时候B事务读取到的年龄还是A事务修改之前的,因为A事务没有提交(这个案例是以:Mysql数据库进行举例,默认的隔离界别是可重复读) 4....,李四再查看,发现自己的账户没有转入的钱,只能当冤大头 2、不可重读读: 在同一个事务下,多次读取同一个记录但返回的数据不一样(这个是针对:更新操作)。...: 在同一个事务中,多次读取的数据数目前后不一致(这个主要是针对: 添加和删除操作)。...在事务中执行不加锁的select操作时,会直接从“缓存”中拿数据;在事务中执行增删改时,会更新undo log中影响的数据行的信息,而若在第一次查询和更新之间的时间范围内,有其他事务提交了插入数据的操作...,且更新时的条件覆盖了插入的数据,则会导致幻读;而对查询语句加锁,则会直接从库中查数据,加锁查询并不会更新快照。
如果是一个新文件,底部左边会显示"file" [新文件]的字样,右边显示0,0-1表示当前光标所在行数和字符数。...重复上一个命令 x 删除光标位置的字符 d 从光标处开始剪切 dd 剪切光标所在位置的整行(保存在临时缓冲区) ndd n为数字,表示从当前行开始,从上到下剪切n行 p 将缓冲区中的内容放到当前行之下...r 替换光标所在位置的一个字符 R 从光标位置开始替换,并进入文本输入模式(ESC退出) u 撤销上一次操作 ZZ 保存退出 移动光标: h或左箭头键 光标向左移动一格 l或右箭头键 光标向右移动一格...下面介绍部分底行模式命令: :set nu 显示行号 :set nonu 隐藏行号 :r file 读取文件file内容并写入当前编辑的文件中,内容从光标当前位置下一行开始插入。...在使用正则表达式时,有时需要在特殊字符之前加上转义字符"\"来使特殊字符表示它的字面意思而不是它的特殊意义,在特定的工具中使用正则时,也需要这样做来避免特殊字符被工具本身解释。
通常在 Linux 中,按下这些按键时,在画面的左下方会出现『 INSERT 或 REPLACE 』的字样,此时才可以进 行编辑。...那就是『20j』或者是『20↓』. 5.4 vim的暂存档,救援恢复和开启时的警告 当我们在使用 vim 编辑时, vim 会在与被编辑的文件的目录下,再建立一个名为 .filename.swp 的 文件...等等复制起来, 并且加到每一 列的后面,亦即每一列的结果要是『 192.168.1.2 host2.class.net host2 』这样的情况时, 在传统或现 代的窗口型编辑器似乎不容易达到这个需求,...那个 filename 可有可无, 如果想要在新窗口启 动另一个文件,就加入档名,否则仅输入 :sp 时, 出现的则是同一个文件在两个窗口间 多窗口情况下的按键功能 :sp [filename] 开启一个新窗口..., 在这样的 情况下,如果是一个 shell script 的程序文件,将可能造成『程序无法执行』的状态~ 因为他 会误判程序所下达的指令内容. 5.9.1 安装dos2unix包 联网情况下安装 [xiaoqi
,B应该被关掉,释放,但是B窗口还显示在桌面,多次运行,发现还会存在A析构不执行的问题(析构中的打印语句并未被打印在控制台),所以这种方式存在问题) 反过来,当先关闭窗口B,再关闭窗口A,B的析构函数被调用...,窗口A的析构函数被调用 (这种关闭方式无卡顿,实际上是B窗口被隐藏,并未主动执行析构,而在A的析构函数中被动执行,这也是为什么关闭B时,显示并未调用B析构,而关闭A时,才显示调用B析构的原因) 我们给窗口...::WA_DeleteOnClose)), 还是先关闭窗口A,再关闭窗口B,显示调用了窗口B的析构函数,然后出现异常,这个异常应该是重复析构B发送的异常。...把窗口A中关于窗口B释放的代码去掉,显示调用了窗口B的析构函数,调用窗口A的析构函数,但是没有出现异常(存在卡顿,多次运行,发现还会存在A析构不执行的问题(析构中的打印语句并未被打印在控制台))。...当关闭这些widget窗口到最后一个的时候,主窗口会跟着关闭,出现这种症状的原因之一,是设置了窗口的属性 也就是使用了这个函数setWindowFlags(),一不做二不休,将这个widget窗口再添加一个属性
由于大多数情况下读取或复制root拥有的对象不需要特殊权限,因此请尝试以普通用户权限运行mc。...[ly6nkuh1b5.png] 默认情况下,Midnight Commander使用蓝色背景颜色并高亮重要的菜单项。...这些是下拉菜单,可以通过按F9然后使用箭头键进行导航来访问这些菜单。按F9键,然后按向下箭头键多次,直到Tree高亮,按ENTER确认。该面板现在将更改为树视图显示文件和目录。...如果从该列表中进入目录,则会丢失找到的文件列表,但您可以使用F9,l(L),再z(从左侧菜单选中Panelize)返回。[ywyuavpykf.png] 管理文件并不仅仅是在本地完成。...将example替换为您在远程计算机上创建的用户名并将203.0.113.1替换为服务器的IP地址。仅当另一端的服务器接受密码登录时,连接才能生效。
重复请求的过程 以下是一个重复请求的流程图: 从以上的流程图可以看书,如果用户重复请求同一资源的话,会对服务器资源造成浪费,服务器重复读取资源,发送给浏览器后浏览器重复下载,造成不必要的等待与消耗。...但是也存在隐患,例如浏览器当前时间是可以进行更改的,更改之后expires设置的绝对时间相对不准确,cache可能会出现长久不过期或者很快就过期的情况。...加载到的资源缓存到硬盘和内存,下次请求可以快速从内存中获取到 为什么有的请求状态码返回200,有的返回304 200 from memory cache 不访问服务器,直接读缓存,从内存中读取缓存。...薄荷应用 举一个简单的小,以薄荷的减肥群页面为讨论对象,查看一下资源加载的情况: 这些图片都是从硬盘中读取,因为没有在内存中获取到响应的资源,当我们刷新页面时,这个资源因为从硬盘中读取时,也存储到了内存中...,再次获取就是从内存中获取了: 当我们没有关闭页面时,内存中的资源始终存在,重新打开则内存释放。
在Excel中输入数据时,Excel会将同一列中已经输入的数据记录下来,如果我们需要输入很多重复的数据,就可以利用这个特点快速输入数据。...图1 操作要点: 1.在当前单元格中,按下Alt+向下箭头键,出现下拉列表。 2.使用箭头键,选择想要输入的数据,按回车键确认。...如果细心观察,可以发现,如果先输入前面的一两个字符,再按下Alt+向下箭头键时,会定位到以这些字符开头的数据项中。 从上面的示例可以看出,下拉列表列出了该列中前面已经输入的所有数据项。...图2 此时,会出现包含该列中已经输入过的数据的下拉列表,如下图3所示,你可以使用箭头键来选择所需的数据,然后按回车键确认输入。 ?...图3 需要说明的是,在单元格中输入的数字和日期不会出现在该列的下拉列表中,如下图4所示。 ? 图4
领取专属 10元无门槛券
手把手带您无忧上云