在insert模式下,C-R (register)插入register里的内容,一个有趣的reg是"=". 假设你想输入123K的具体字节数,不用打开计算器,试试这个“=1024*123”, “125952”就出来了! 另外在命令行里C-R C-W和C-RC-A是必用的技巧,它们将光标下的和 考到命令行里,省了你无数的typing。
3. C-X (auto complete) 在insert模式下,C-XC-P/N/L/F等自动完成前面的词、行、文件名等,是编程时必用的 命令。其中C-P和C-N可以不用C-X。
4. [p & ]p (smart paste) paste同时自动根据目标行的缩进调整来源行的缩进。在copy代码段的时候非常有用。
5. C-O (fast out, fast in) 在insert模式下,用C-O后可以执行一个normal命令,然后立即返回insert模式,省去了 用ESC的麻烦。
6. [I (fast grep ) [I显示文件中包含光标下的所有行。我常用来浏览某个id在程序中的引用情况。 还有很多相关的命令::h include-search
7. object-select iw, aw, ib, i], i} ... 都非常有用!看help吧 :h object-select
先写这么多,以后再补充吧。
例如你想把所有的"..."形式的串替换成'...'的形式 但引号里的内容不变 你就可以用 %s/"\(.*\)"/'\1'/来做 上面这个正则表达式"\(.*\)"里 \用来表示()是元字符 第一个在括号里的被匹配的串就可以被\1来代表, 以后依次是\2 \3。 顺便说一句,我到现在还不 知道怎么限制vim里正则表达匹配的贪婪算法。
------------------------------------
里面说的非贪婪匹配是 \{-}, 也就是%s/"\(.\{-}\)"/'\1'/g \太多了可以用 \v, %s/\v"(.{-})"/'\1'/g 详细 :h/\{- :h \v 另外 和 perl 正则表达式的区别在 :h perl-patterns 把aaaaa.20300.2000.com 替换为aaaaa.com ~字符 ~~~~~数字和点
我用s/\(^.*)\(\.\d*.\)com/\1.com/ 结果为 aaaaa.20300.com 请问有没有好点儿的办法?谢谢
☆─────────────────────────────────────☆ alphatan ( C )于 (Tue Aug 10 09:27:19 2004) 提到:
【 在 qiaolin (风儿) 的大作中提到: 】 : 把aaaaa.20300.2000.com 替换为aaaaa.com : ~字符~~~~~数字和点 : 我用s/\(^.*)\(\.\d*.\)com/\1.com/ 1. \(^.*\) 一下子把整个字符串吞进去了. \1 =aaaaa.20300.2000.com 2. 遇到com把 com从\1中吐出来. \1 =aaaaa.20300.2000. 3.遇到.把com前面的\.吐出来 \1 =aaaaa.20300.2000 4. 遇到\d*, 再把随后的2000吐出来 \1 =aaaaa.20300. 5. 遇到\., 把.也呕出来了. \1 =aaaaa.20300 所以, 得到你要的结果. 可以用\{-}进行非贪婪匹配.
但为什么不直接把数字跟它们的点去掉呢? s/[0-9.]\+//g
: 结果为 aaaaa.20300.com : 请问有没有好点儿的办法?谢谢 ☆─────────────────────────────────────☆ qiaolin (风儿)于 (Tue Aug 10 09:36:27 2004) 提到:
谢谢大侠,有问题请教: 贪婪匹配的顺序是怎样的呢? 在这个例子中,先匹配第一个pattern,再从最后面的pattern一个一个“吐”出来? 【 在 alphatan ( C ) 的大作中提到: 】 : 1. \(^.*\)一下子把整个字符串吞进去了. \1 = aaaaa.20300.2000.com : 2. 遇到com把 com从\1中吐出来.\1 = aaaaa.20300.2000. : 3.遇到.把com前面的\.吐出来 \1 =aaaaa.20300.2000 : 4. 遇到\d*,再把随后的2000吐出来 \1 = aaaaa.20300. : 5. 遇到\.,把.也呕出来了. \1 = aaaaa.20300 : 所以, 得到你要的结果. : 可以用\{-}进行非贪婪匹配. : 但为什么不直接把数字跟它们的点去掉呢? : s/[0-9.]\+//g 这里没有这样用是因为aaaaa也可能是a123a,可不可以用/w呢? 在查找、替换命令 使用以下正则表达式元字符,功能强大。 也可用在:g/命令中
& 代表最近匹配串 ~ 代表最近替换串 . 任一字符 ^ 行首 或 表示 非 $ 行末 \< 词首 \> 词尾 * 0次或多次 \( \) 分节指定与其中正则式匹配的部分,在替换时候可以用 \1 \2\3 ... 引用匹配部 分 [] 表示选择 - 表示范围 ,例如 [0-9]代表数字,[a-z]代表小写字母 [^0-9a-zA-Z]代表非数字和大小 写字母 \{m,n\} 前面部分的从 m 次 至 n 次出现,m n 为数值 \{m\} 精确m次出现 \{m,\} 大于等于m次出现
以下举几例子,欢迎大家提出问题来共同探讨。 1.在20列后插入串 :%s/^.\{20\}/&insert something here/g
2.把C++语言里 //注释 修改为 /* */ 格式 :%s/\/\/\(.*\)$/\/\*\1\*\//g
3.在建存储过程的sql文本里,在每个create procedureprocname() 前加上drop procedure procname; [ ]里输入的是一个空格和TAB键。 :%s/^[ ]*[cC][rR][eE][Aa][tT][eE][ ]*[pP][Rr][oO][cC][eE][dD][uU][rR][eE][ ]* \([^(]*\)/drop procedure \1;Ctrl_VCtrl_Mcreate procedure \1/g
----------------
数字加减, CTRL-A, CTRL-X
----------------
vim里自动缩进一段 把光标移动到某个花括号, 按 =% 缩进整段。 把整段不按格式往外缩一个tab >% 缩两个 >>% 往里缩 <%
注意%匹配很多东西, 如果你想从 #ifdef 缩到 #endif 也可如此
try :help c_CTRL-R :helpc_CTRL-D
:将光标下的keyword拷贝到命令行缓冲区中 *: 从系统剪贴版中拷贝内容 =: 表达式求值 ": 拷贝buffer中的内容 ....
: 命令和文件提示 常用命令: ------------------------------ CTRL-Z vim 切换到后台
:g/xxx 列出所有含 xxx 的行; 适合想到含 xxx 的某行, 但不知道行号, /xxx 又太慢
q: q/q? 编辑长命令时比较舒服, 执行按回车, 按 CTRL-C 再次进入 : / ? 原来的输入状态, 再按一次关闭.
CTRL-W= 所有窗口等高, 适合 diff 时自己移动了 window 大小 CTRL-Wo 等效于 :only CTRL-Wc 等效于 :close!
gvim-u 用 NONE 的话必须大写, 可以用 nul 文件, gvim -u nul, 而且不 区分大小写
-s 执行脚本文件, 是 normal 时的指令, cmd 的命令要 :,但不用加 -w 把所有按键记录appedn 到指定文件中 -W overwrite 这 2 个适合不会 perl sed 的 vimer
--servername --remote-silent 这 2 个搭配着用, 可以总在一个 vim 里打开新文件, 比如 gvim.exe --servername smarter --remote-silent test.text 命令太长, 可以自己 alias 一下(win32 下用 doskey 就可以)
再次选中上次选中的内容, 用 gv 在选中的区域首尾跳动, 用 大写 O
:redi 把输出信息重定向, 比如 保存所有 set 选项到 剪切板 :redi @* :se all 具体 :h redi
c\c++ 下常用的: ------------------------------ [[ ]] 在 C 的{} 形成的段落中移动 (在第一列 { 之间跳动, 一次一个函数,一个结构或类的定义)
[# 和 ]#在 #if #else #endif 的上下位置间移动 [{ ]} [( ]) [/ ]/ 在注释/* */ 间移动 这样在这些块的中间位置, 就能迅速到块头和块尾 如果已经在这些行上, 如果不是到对应点, 会到上一级范围, 如 { 上按 [{ 到上一级 ]} 则到对应点
(vim里常用 [ 表示 "向上", ] 表示 "向下", 比如上面的例子, 以及 [i ]i, diff 时候的 [c ]c 等)
% 在 () {} [] #ifdef#endif /* */之间跳转 可以 :so $VIMRUNTIME/macros/matchit.vim 这样可以在 if endif
<\tr> 之间使用
对 1个块的操作, 具体 :h v_a 里面的 iX aX 什么的都很好用
ctags 用-a 附加新 tags 到 ctags 文件后
--- 对c ---ctags -R --c-types=+px d:\mingw\include (etags) --- 因为ctags 确省不把函数声明作为 tag
--- 对c++ --- ctags -R--language-force=c++ --c++-types=+px --verbose --extra=+q extra=+q 用来增加生成 Class::member 的形式, 默认没有 这样就可以用 :ts CView::OnDraw 这种形式看 --- 因为 c++一些头文件不用 .h 所以要用 --language-force
--- 对java --- ctags -R--languages=java c:/jdk131/src --- 要把src.jar 展开
:che 检查include 的文件在 path 中是否存在, 注意会递归验证
插入模式 ------------------------------ insert模式下的: CTRL-W 回删一个 word, 具体 :h i_ctrl-w CTRL-U 回删在当前行输入的内容
CTRL-R 用某个 reg 的内容
CTRL-E CTRL-Y
0CTRL-D 这 2 个对缩进, 具体 :h i_0_CTRL-D ^CTRL-D
CTRL-C 退出 insert
另外, ascii 第 1 - 26 个对应的就是 CTRL-A 到 CTRL-Z 所以下面几个也常用 CTRL-H 对 CTRL-J 对 vim 里叫 CTRL-M 对
不使用ab: 输入 缩写 后, 按 ctrl-v接着输入以后的字符 发信人: sysfree (虫), 信区: VIM 标 题: 插入模式下的命令汇总 发信站: BBS 水木清华站 (Wed Nov 17 14:36:29 2004), 站内
插入模式下有用的键盘命令: (注意:以下命令都是在插入模式用的,也就是左下角要显示"--Insert--")
CTRL-[ or CTRL-C:退出插入模式。如果嫌太费事,可以试试这个。 CTRL-A:插入先前插入过的内容。看起来比较有用,但是飘忽不定,很难把握。 CTRL-N/CTRL-P: 搜索匹配,自动完成单词(超级有用)。 CTRL-R:插入寄存器内容。例如*会插入windows剪贴板的内容。:reg命令查看全部寄存器。 CTRL-T/CTRL-D: 将本行缩进/去缩进,无论光标在什么位置 CTRL-Q: 当CTRL-V不能用时,可以试试这个。 CTRL-Y: 输入和上面一行相同的字符。有时候可能用的着。 CTRL-E: 输入和下面一行相同的字符。 CTRL-X: 进入CTRL-X模式。
CTRL-X模式基本上是用来自动完成的。vim的自动完成可以包含当前文件、头文件、tag文件、字典文件等。 CTRL-X模式中的主要命令: CTRL-X CTRL-L: 整行自动完成 CTRL-P/CTRL-N: 在当前文件中自动完成单词 CTRL-I:在头文件中查找匹配的单词 CTRL-]:在tag中补全单词 CTRL-F:自动完成文件名 CTRL-D:在头文件中查找宏定义 以上命令都可以再紧跟CTRL-P或CTRL-N,表示继续向前或向后搜索。 例如:按CTRL-XCTRL-L补全了一行,但不是自己想要的,可以继续按CTRL-L查找,也可以按CTRL-P或CTRL-N继续查找。找到后如果再按CTRL-XCTRL-L将会把找到的那一行的下面的行也复制过来,很过瘾吧? 下面两个命令也在CTRL-X模式,但是不属于自动完成: CTRL-X CTRL-E: 在插入模式下让屏幕往上滚一行 CTRL-X CTRL-Y: 同上,屏幕下滚一行
其它不常用的命令没有列出。欢迎补充。
去掉菜单 set go-=m 去掉工具条 set go-=T 去掉右边的滚动条 go-=r 去掉下边的滚动条 go-=b 4 最好的办法,编辑_vimrc. 加入set fileformats=unix,dos,mac 不管什么格式都可以识别了。按说vim可以自动转换的,不知道为什么 要自己加,我的是vim63 windows版。 你想要的是 'cscopequickfix' 这个选项吧?
首先,你要设置 'cscopequickfix' 这个变量,比如 set cscopequickfix=s-,c-,d-,i-,t-,e- 再打开 quickfix 窗口 copen 然后,比如你要找出所有出现 elephant 的地方,可以 cscope find s elephant 所有的结果都显示在 quickfix窗口里面了,可以双击或者回车来选择。
发信人: ann77 (ann), 信区: VIM 标 题: Re: 请教如何将vim和编译器整合使用 发信站: BBS 水木清华站 (Wed Jul 7 12:49:16 2004),站内
我做了一个试验,也许对你有帮助。
VIM和其他编译器一起工作的原理就是把 compiler 的stderr 重定向到一个临时文件中。
然后用 :cfile 打开这个临时文件, 用 errorformat 来解释临时文件的内容。
下面我的具体做法, 我是在 BASH 下。 $for i in * ; do echo "2:$i:$(head -n 1 $i)" ; done > x 生成一个错误文件,内容如下 2:scr:#!/bin/bash 2:screenshell:#!/bin/bash 2:view-data.py:#!/usr/bin/python 2:view-data.sh:#!/bin/bash 2:x:2:scr:#!/bin/bash 每一行的格式就是 行号:文将名称:错误信息。
然后用 vim :set errorformat=%l:%f:%m
设定 errorformat 的格式, :help errorformat for moreinformation :cfile x 打开错误文件。
然后就可以想 make 出错的时候一样,打开每一个文件的第2行了。
我认为,你切换到了新的 compiler 后,你要做的事情就是 观察新的 compiler 的错误输出,编写一个新的 errorformat 就行了。
调试的时候,可以 $ make 2>temp-error-file 然后 vim 中 :set errorformat=????? :cfile tmp-error-file
【 在 Charity (花无缺) 的大作中提到: 】 : 在RH下,我已经习惯了 : GCC + Vim + Make整合使用, : Vim好像可以直接利用GCC编译器生成的Error List, : ................... 标 题: Re:如果查看一个10000000行的文件,如何提高速度? 发信站: BBS 水木清华站 (Fri Jul 23 11:03:37 2004), 站内
只要就是颜色高亮引起的, 只要syntax off 或是set filetype=就可以了 这个在打开那些一行xml文件时尤其明显(xml可以set filetype=html)
【 在 thinelephant (严重消化不良) 的大作中提到: 】 :主要是翻页的速度,如果向下一点一点的翻页速度还可以,但是向上翻页或者滚动就很慢,或者跳到文件末也要等一会。退出也要等一会。 : 呵呵,我已经找到解决方案了:只读打开,set compatible,syntaxoff。 : 速度不错,关闭也是瞬间。 : ................... 'd
d 表示0-9的数字, 代表最近打开的文件 发信人: windblown (......), 信区: VIM 标 题: Re: 问一个替换怎么写 发信站: BBS 水木清华站 (Tue Dec 14 10:08:39 2004), 站内
用sed吧 sed -e ' :REPEAT s/\([[:alpha:]]*\) \([0-9]*\),/\1 \2\n\1 / t REPEAT ' yourfile
【 在 thinelephant (严重消化不良) 的大作中提到: 】 : 每一行都是 \S\+ \(\d\+,\)*\d\+的形式,想把每行的逗号分割的数字展开成多行。 : 例如 : elephant 13,18,19 : ................... vim 使用的一些小技巧。
在每行后面插入一行68个-号,用下面的命令:
:%s/\n/\r---------\r/
vim的列模式。 在命令模式下,按v(orV)可进入可视模式,但是只能按行选择。要进入列模式,使用ctrl+v。
VI是VIsualeditor的意思,ex是他的“不可视”版本。如果多许多文件进行同样的编辑,用vim一个一个弄,就显得很麻烦。这种情况,我们可以采用ex进行自动化处理。例如要把当前目录下所有的html文件编码由big5转换成gb2312,可以执行下面的脚本: #!/bin/bash for I in *.html;do ex - $I< :set encoding=big5 :setfileencoding=gb2312 :wq EOF done
基于GTK2的gvim在gbk的locale下,菜单和编辑区中文字全乱码,而gb2312和utf-8locale下均正常。解决办法:在自己的home目录下,创建一个.gvimrc文件,其中包括: set encoding=gb2312 source $VIMRUNTIME/delmenu.vim source $VIMRUNTIME/menu.vim 其原理似乎也是使用了gb2312的locale。gvim(GTK)本身不支持gbk?
vim具有的fold功能,可以把相连的某些行折叠起来,在需要的时候展开。 选中要折叠的行,zf命令创建一个fold并折叠起来,zr命令展开。z打头的很多命令都和fold操作有关,具体请:helpz
假设你在编辑一篇html文件,可以使用如下命令对它进行排版: :%!tidy -iq tidy是一个html/xml格式化工具,同时还具有查错和转换功能。
vim对很多源文件提供彩色显示功能,能否把vim中显示的彩色发布到web上呢?下面的命令能帮你完成。 :TOhtml
使用y命令在vim中复制的时候,可以保存在a-z26个寄存器中,其实还有两个寄存器可以使用:*和+,放置在*寄存器中的文字("*yy),可以通过鼠标中健粘贴到其它程序中,比如mozilla,+号寄存器中的文字("+yy),通过右健菜单中的paste粘贴出来。反之亦然。(这一招学到smth上acura的,在此表示感谢!) ******************************************************************************** 件,然后在里面加入一行就可以打开所有的编码的文件了(暗爽):
setfileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1 保存从新起动vim,打开文件ok了。说到这里我感觉vim里面还有一个显示行号和语法高亮是我常用的功能,每次在vim里面输入syntaxon太他吗的烦了,我这种懒人是不能容忍这种事情发生的,算了,往里面在写两行字符,让他打开的时候自动的开启吧:
setnu #打开显示行号的功能 syntaxon #打开语法高亮的功能 这样打开一个源代码文件感觉就比较爽了,效果太好了,不好,这么正规的软件代码也有bug,我改改,去除那个bugsection,我自己往里面写,输入代码,可是怎么不会自动缩进呀,这让我们这些人怎么能够忍受呀,好了,听说有个vim给写好的配置文件,是推荐的,拷贝了直接使用,估计就可以了,在终端输入命令一条吧。
cp /etc/vim/vimrc /usr/share/vim/vim63/vimrc_example.vim 好了,就这样从新打开 vim,一切 ok 了,如果能有鼠标控制,有 menu就更好了,我们继续添加,不就是网 .vimrc 里面加己行字吗,呵呵:
setmouse=a #加入鼠标支持 set wildmenu 这样就差不多了,基本上可以满足一般人的需求了,可是我这种程序源的话可能在读源代码的时候会经常的在多个文件中间转换,如果每次都退出在用vim打开的话很麻烦的,怎么办,分屏打开多个文件,这个可以,使用:new命令就可以,可以分屏的,但是我的可是15的显示器,分分还有什么呀,还是想个其他的方法吧,能不能用一个简单的命令在不退出vim的情况下来回转换呀,答案是肯定的,伟大的vim什么做不到呀。还是在.vimrc里面加入几句话,不过这才麻烦点,呵呵
if has(”unix”)
map ,e :e=expand(”%:p:h”) . “/”
else
map ,e :e=expand(”%:p:h”) . “\”
endif
保 存重新打开 vim,然后用 vim打开一个源代码文件,在正常模式下输入,e就会有一个框出来,上面罗列了当前目录下的所有文件,你用 tab建来选择打开那个文件,太爽了。基本上 vim的东西就这些了,还有的就是一些汉化的了,我在 linuxfans.org下载了vim 的中文文档,解压安装了,使用的不错
vim设置自动格式化文本:
源码:-------------------------------------------------------------------------------- :set formatoptions=croamq :help formatoptions 看帮助; t 在文本宽度内,自动换行,对注释行无效; c对于注释,在文本宽度内自动换行,并自动插入注释前导; r在插入模式下,回车后自动插入当前注释前导; o在正常模式下,用o或O插入空行时,自动插入当前注释前导; q允许用"gq"格式化注释。但格式化不改变空行或只带注释前导的行。 m对于255以上的多字节字符也进行断行。这对于每个字符就是一个字的亚洲文本特别 有用。 n 对于带. ) ] }的数字,如1.,1)等等,自动换行对齐;要求自动缩进选项ai打开。 例如:1.test wraps. 2. test2... ******************************************************************************** 具体的可以help看帮助
讨论到的自动缩进是 autoindent 主要是 c 代码等 拷贝粘贴 就在已经缩进的基础上再缩进 很不美
于是就可以 set noautoindent 解决 或者设置 set paste
具体 vim 网站有 Tips Tip #330: how to stop auto indentinghttp://www.vim.org/tips/tip.php?tip_id=330 ******************************************************************************** 摘要:vim的一个有趣的用法 如果想在vim里面达到这个效果,在vimrc中加入一下两行: au BufWinEnter *. exe 'set list listchars=tab:\|\ ' au BufWinEnter *. exe 'command Seetab :set list listchars=tab:\|\'
当你编程序时, 就会达到这个效果.源自:http://www.vim.org/tips/tip.php?tip_id=460
用法: 当你不想看到对齐线时 在vim的normal模式下 :set nolist 如果你想看到对齐线时 在vim的normal模式下 :Seetab 在我们谈起Vim编辑器似乎只是觉得他只是一个类似于一个命令行方式的文本编辑器。而事实上不是这样的。Vim在窗口环境中也可以完美的完成我们的工作。在窗口环境下,我们不仅可以使用那些在Vim文本方式下的命令来完成工作,而且还有许多的菜单和其他的选项。这些都使得我们可以完美的来完成我们的工作。 我 们要启动图形界面的Vim可以用下面的命令:gvimfile。这样就可以打开图形界面来编辑文本file。图形界面下的Vim编辑器的外观因你所用的操作系统的不同而有所不同,就是同样的操作系统也会因你所使用的工具集不同(Motif,Athena,GTK)而会呈现不同的外观。而值得向大家推荐的是GTK版本的Vim编辑器,当然其他版本的也是可以来完美的完成我们的工作的。 在Windows系统中我们可以在标准形式下用鼠标来选择文本,而在XWindow系统中我们也会有一个标准的系统来使用鼠标,但是这两种标准是不同的。然而比较幸运的是我们可以定制我们的Vim编辑器。我们可以使得我们的Vim中的鼠标的行为看起来像是XWindow系统中的鼠标的行为。下面的命令是设置鼠标的行为为XWindow风格的鼠标行为::behavexterm。而下面的命令则是使得鼠标的行为是Windows风格的行为::behavemswin。在UNIX和Linux系统中的鼠标风格是xterm风格,而在Windows中的鼠标风格是在安装过程中选择的。为了控制鼠标的行为,命令:behave有以下这些选项: Settingfor Setting for Option :behavemswin :behave xterm 'selectmode' mouse,key (empty) 'mousemodel' popup extend 'keymodel' startsel,stopsel (empty) 'selection' exclusive inclusive xterm的鼠标风格的行为主要有以下一些: 左键: 移动光标 拉动左键: 在可视化模式下选择文本 右键: 选中光标处到右键点击处的文本 中键: 在光标处粘贴选中的文本 Windows的鼠标风格的行为主要有以下一些: 左键: 移动光标 拉动左键: 在选择模式下选中文本 选中到光标处的文本 显示弹出菜单 中键: 将系统剪切板中的文本粘贴到文件 (注:其中的S为Shift键) 其他的一些特殊的用法: Shift+左键: 向前搜索光标处的文本 Shift+右键: 向后搜索光标处的文本 Ctrl+左键: 跳转到以光标处的文本为名字的标记(tag)处 Ctrl+右键: 跳转到前一个标记处 在图形界面的Vim编辑器还有一个有趣的特征,那就是当我们点开一个菜单时就会发在子菜单的第一行有一条虚线,点击此虚线就可以将这个菜单移其他的地方。关闭后Vim的菜单结构又恢复到正常的状态了。在GTK版本和Windows版本中的图形界面的Vim还有一个工具栏,这些工具可以快速的完成我们的工作。
你可能感兴趣的:(GVIM)
GVim-vimrc 字体缩放与界面优化配置
晨曦backend
VIM vimrc vim
GVim-vimrc字体缩放与界面优化配置文章目录GVim-vimrc字体缩放与界面优化配置背景问题解决方案1.字体大小调整函数增加字体大小函数减少字体大小函数2.快捷键映射3.自定义命令附加界面优化光标行列高亮完整配置使用技巧背景问题在使用Vim编辑器时,我们经常遇到这样的情况:终端Vim:可以直接使用Linux终端的放大缩小快捷键(通常是Ctrl++和Ctrl+-)GVim:作为图形界面版本,
Dubbo 基础
应巅
spring boot 后端
Dubbo基础服务注册中心Zookeeperlinux安装zookeepertar-zxfzookeeper-3.4.14.tar.gz对zookeeper进行配置cd/app/zookeeper-3.4.14/confcpzoo_sample.cfgzoo.cfgvimzoo.cfg修改存放zookeeper数据的目录dataDir=/app/zookeeper-data添加环境变量vim/et
[vim与gvim技巧]vim gvim技巧大全(9)
nick0411
vim&vi vim character command unix perl 工作
2用命令}移动到这个段落的底部,标记为b3输入命令:'a,'bmove来移动文本.老版本的Vi编辑器不能很好的来处理多文件.但是Vim在处理多文件上却显得优秀得多.我们有多种不同的方法在不同的文件之间进行文件拷贝.我们可以使用传统的Vi风格的命令,也可以使用Vim可视化模式.我们还可以利用系统的剪切板来进行不同文件间的文本拷贝,所有的这些方法都可以很好的来工作,采用哪一种方法这就要看我们个人的喜好
gvim align plugin 使用教程详细介绍
简单同学
vim vim
一、插件安装步骤1.下载插件访问VimOnline的Align插件页面,点击页面底部的Download按钮获取Align.vba.gz文件。或通过CSDN资源下载(如摘要6提供的链接)。2.安装到GVim解压文件:将下载的Align.vba.gz复制到~/.vim/目录(Windows用户为C:\Users\用户名\vimfiles\),执行以下命令解压:bashgunzipAlign.vba.g
python 如何传入参数?
Joyner2018
python python 前端 开发语言
在Python中,传入参数主要分为以下几种情况:1.脚本参数(命令行参数)通过命令行运行脚本时可以传入参数。例如:pythonscript.pyarg1arg2处理命令行参数的方法:使用sys.argv使用argparse模块(更强大)示例:使用sys.argvimportsysif__name__=="__main__":print("脚本名:",sys.argv[0])print("参数列表:
neovim 工具介绍
m0_55576290
install lua
seoul256.vim:一个基于首尔色彩的低对比度Vim颜色方案,适用于256色终端或GVim。vim-easy-align:Vim插件,用于对齐文本。vim-go:Vim的Go语言插件,支持语法高亮、自动缩进等。coc.nvim:集成了LSP(LanguageServerProtocol)的Neovim/Vim插件,提供代码自动补全、跳转定义等功能。fzf:命令行模糊搜索工具,用于快速查找和选
Ubuntu 优化 Vim 指南
獨梟
# Linux软件安装配置 ubuntu vim linux
Vim是一款功能强大的文本编辑器,通过合适的配置,可以变成一个接近IDE的高效开发工具。本指南提供最精简、最实用的Vim配置,满足代码补全、语法高亮、代码格式化、目录管理等常用需求。1.必须安装的软件首先,确保你的系统安装了Vim以及相关依赖:#更新系统包sudoaptupdate#安装Vim(推荐gvim,支持clipboard)sudoaptinstallvim-gtk-y#安装node.js
端口映射/内网穿透方式及问题解决:warning: remote port forwarding failed for listen port
Davide~苏
Linux 服务器 运维 内网穿透 打洞 端口映射
文章目录需求:A机器是内网机器,B机器是公网服务器,想要从公网,访问A机器的端口方式:端口映射,内网穿透,使用ssh打洞端口:遇到问题:命令执行成功,但是端口转发失败分析:目标服务器ssh配置问题解决:修改ssh配置需求:A机器是内网机器,B机器是公网服务器,想要从公网,访问A机器的端口方式:端口映射,内网穿透,使用ssh打洞端口:1:配置configvim~/.ssh/config输入Hostr
使用vim做笔记-vimtex
vimlatex
本文基本上是对HowI'mabletotakenotesinmathematicslecturesusingLaTeXandVim一文的实践操作。感谢原作者的分享。本文基础平台Windows11软件gvimSumatraPDFmiktexStrawberryperlVim插件vimtexutilsnip正文下载安装上述软件,包括gvim,SumatraPDF,miktex,Strawberrype
【Mastering Vim 2_07】第六章:正则表达式和 Vim 宏在代码重构中的实战应用
安冬的码畜日常
Mastering Vim (2nd Ed.) vim 正则表达式 重构 宏 vim macro macros 代码重构
【最新版《MasteringVim》封面,涵盖Vim9.0版特性】文章目录第六章正则表达式和Vim宏在代码重构中的应用1substitute替换命令2关于substitute的精确匹配3参数列表arglist在跨文件操作中的应用4Vim正则表达式基础5关于magic模式5.1magic模式5.2nomagic模式5.3verymagic模式5.4verynomagic6批量重命名变量名、方法名或类
【数字IC验证快速入门】5、快速上手Linux下的文本编辑神器gvim
ReCclay
# 数字IC验证快速入门 linux vim
导读:作者有幸在中国电子信息领域的排头兵院校“电子科技大学”攻读研究生期间,接触到前沿的数字IC验证知识,旁听到诸如华为海思、清华紫光、联发科技等业界顶尖集成电路相关企业面授课程,对数字IC验证有了一些知识积累和学习心得。为帮助想入门前端IC验证的朋友,思忱一二后,特开此专栏,以期花最短的时间,走最少的弯路,学最多的IC验证技术知识。易忘却好用的小技巧CheatSheet:选中写的单词然后变成大写
验证工具:GVIM和VIM
TrustZone_
IC验证之旅 vim 编辑器 linux
一、定义与关系gVim:gVim是Vim的图形界面版本,提供了更多的图形化功能,如菜单栏、工具栏和鼠标支持。它使得Vim的使用更加直观和方便,尤其对于不习惯命令行界面的用户来说。Vim:Vim是一个在命令行界面下运行的文本编辑器,它是对Vi编辑器的增强和改进。Vim以其强大的文本编辑功能和高效的操作方式而广受程序员和文本编辑者的喜爱。关系:gVim是Vim的一个分支或变体,它继承了Vim的所有核心
Gvim + VCS + Verdi 使用技巧之环境篇
小白菜呀呀呀
VCS + Verdi 学习 经验分享 bug
前言新手在刚刚接触到Gvim+VCS+Verdi的仿真验证环境时,可能会遇到加了相应语句及文件但还无法生成fsdb波形文件的问题。本文主要提供解决该问题的方法或调试的思路和方向。一、tb文件添加语句通常来讲,在环境配置正确的情况下,只要在tb文件中加入以下2条语句即可产生fsdb波形文件,因此首先需要排查这一项。initialbegin$fsdbDumpfile("fsdb_name.fsdb")
centos开启ssh服务命令
kolaseen
centos ssh linux
1.检查centos是否安装了openssh-serveryumlistinstalled|grepopenssh-server如果没有则输入下面的命令进行安装(输入su进入管理员模式)yuminstallopenssh-server2.进入/etc/ssh/目录下的sshd服务配置文件sshd_configvim/etc/ssh/sshd_config按下键盘的o键或i进入编辑模式找到如下行将注
《FPGA至简设计原理与应用》学习笔记2 —— FPGA至简设计原理
|惜取少年时
FPGA与嵌入式 fpga开发
课程资源视频:https://www.bilibili.com/video/BV14K4y1u7kH/资料:https://www.aliyundrive.com/s/E9H7Mc5hqhu第1章高效编辑器GVIMGVIM官方的四种操作模式命令模式插入模式可视模式正常模式本课程至简设计法将GVIM分为三种模式:命令模式:只能看代码和发出命令,不能进行文本编辑编辑模式:文本编辑列操作模式:对多行的某
vim基本操作
AeroZ
参考:https://blog.csdn.net/HUANGQUANZHE/article/details/82750243vim的三种工作模式以及转换方式vim-vi-workmodel.pngvim简单使用指南20180917223909895.gifvi/vim的使用基本上vi/vim共分为三种模式,分别是命令模式(Commandmode)输入模式(Insertmode)底线命令模式(Las
gvim【一】【安装和基本使用】
凳子花❀
数字IC设计 GVIM linux vim 编辑器
文章目录一、安装二、基础使用(一)模式简介(二)编辑模式(三)命令模式1.光标移动2.复制/剪切/删除/粘贴操作3.撤销/恢复4.其他(四)末行模式三、本系列其他博客有关Vim的具体介绍请查看:Linux虚拟机(CentOS5)学习笔记(三)之Vim,此处不再具体介绍,只讲解一些GVIM的安装和基础使用。一、安装GVIM下载:GVIM打开上述网页(可能比较慢),然后点击下图红框所示下载安装包:双击
linux centos修改ssh端口号
Etyero
linux linux centos ssh端口
ssh默认端口为22,安全起见,一般不用默认端口,而是修改成其他不规则端口。进入正题:1.修改ssh配置文件/etc/ssh/sshd_configvim/etc/ssh/sshd_config2.修改firewall配置(如果本机防火墙是关闭状态,可跳过这一步)firewall添加端口:firewall-cmd--zone=public--add-port=22492/tcp--permanen
docker 安装mysql
会飞的大鱼吃小鱼
docker docker mysql 容器
1、创建宿主机挂载磁盘目录mkdir-p/home/huangliang/mysql/datamkdir-p/home/huangliang/mysql/config2、创建配置文件cd/home/huangliang/mysql/configvimysqld.cnf文件mysqld.cnf配置如下[mysqld]pid-file=/var/run/mysqld/mysqld.pidsocket=
cnpmjs.org部署私有npm源
平仄_pingze
项目cnpm/cnpmjs.orgDocker部署方式:创建配置文件mkdir/root/.cnpmjs.orgvim/root/.cnpmjs.org/config.jsonconfig.json{"bindingHost":"0.0.0.0","scopes":["@company"],"registryHost":"192.168.16.25:7001"}使用Docker启动这里superm
nginx做盗链与防盗链配置
Starts️
chrome 前端
盗链与防盗链配置1.盗链服务机准备资源(10.12.153.43) #在/usr/local/nginx/html/存放tupian1.jpgtupian.jpgvim/usr/local/nginx/html/index.html zbw.com 客户端配置(10.12.153.220) #vim/usr/share/nginx/html/index.ht
GVIM 可视化模式
Bug_Killer_Master
gvim vim
在可视化模式下,可以对一个文本块的整体进行操作。例如,首先高亮选中一部分文本,然后用d命令删除这个文本块。可视化模式的好处在于,不但可以大大提高操作的效率,而且还可以在做改动之前,就看到操作将影响的文本。可视化模式的种类可视化模式可以分为以下三种:用v命令进入的字符可视化模式(Characterwisevisualmode),文本选择是以字符为单位的。用V命令进入的行可视化模式(Linewisev
2018-09-26 vscode使用vim全局替换
五大RobertWu伍洋
vim,gvim下一直使用如下命令全局替换::%s/pattern/string/g最后才发现g是指替换整行所有匹配%才表示是全文但是vscdoe中使用却达不到想要的效果最后发现是大小写问题,使用::%s/pattern/string/gi终于可以在vscode快乐地替换了!
Linux文本处理指令truncate-man帮助手册
云计算DevOps-韩老师
# 云计算入门 linux 运维 服务器
Linux文本处理指令truncate-man帮助手册VIM(1)GeneralCommandsManualVIM(1)NAMEvim-ViIMproved,aprogrammer'stexteditorSYNOPSISvim[options][file..]vim[options]-vim[options]-ttagvim[options]-q[errorfile]exgexviewgvimgv
windows gvim查询配置文件位置
ITKEY_
windows vim vim
打开gvim输入以下命令::echo$MYVIMRC还可以点菜单中的帮助==》版本配置分享colorschemedesertsetencoding=UTF-8"leader设置成空格letmapleader="""使用鼠标setmouse=c"显示行号setnu"相对行号setrelativenumber"tab=4个空格settabstop=4setshiftwidth=4"高度光标所在行"se
如何使用jabref向gvim插入参考文献引用
中年阿甘
软件使用 参考文献 jabref gvim latex
文章目录1.JabRef是什么2.本文要解决的问题3.解决步骤3.1步骤1-设置jabref-使之能向打开的gvim编辑器插入引文3.2步骤2-在tex文档导言区调用宏包biblatex‾\underline{biblatex}biblatex、引入bib数据库3.3步骤3-在tex文档正文区合适位置输出参考文献列表3.4步骤4-使用jabref向当前gvim编辑器插入点插入参考文献引用3.5最后
Windows下Gvim的安装与配置
A u g
数字IC工具 vim linux 编辑器
1.简述Vim是Linux上著名的文本编辑器,他是早年的Vi编辑器的加强版。Gvim是Vim的图形前端,它是跨平台的编辑器,基本上主流的操作系统上面都有它的版本。此处记录在Windows下的安装与配置,在Linux下的网上教程很多。因为在公司实习时,主要用的两台电脑放在公司,下班不想带回实验室,所以就在实验室的电脑上安装GVIM,用于配合在Linux下的Verilog训练。2.GVIM的安装最新安
Windows环境下 Gvim 安装 Vundle/Ctags/taglist
君子爱财好色
git windows vim
目录一、安装VundleforWindows1、安装Git2、安装Curl3、安装Vundle二、ctags下载与安装1、生成Tag文件2、代码的快速浏览三、Taglist下载和安装1、在_vimrc中设置tagslist2、taglist的配置与使用四、网盘下载:包括:gvim81、ctags、taglist、git一、安装VundleforWindows1、安装Git1下载GitforWind
从零开始配置vim(Windows版)
薛定谔的青蛙
vim 编辑器 linux
linux下vim用习惯了...然后就给自己win下vscode也装了个vim插件,用下来还是感觉不顺手,并且处理太多文本时有明显卡顿,于是乎自己配了下win版的vim。不过好像也并不是从零开始的...初始基础版的.vimrc有copy他们版本,在此基础上进行了各类配置。先放个最终效果,以lammpsin文件为例:vim安装Windows下Gvim的安装与配置_gvimwindows-CSDN博客
ssh公私钥登录
小薛睡不醒
ssh 运维
1.生成ssh公私钥文件ssh-keygen-trsa一直为默认选项2.修改SSH主配置文件/etc/ssh/sshd_configvim/etc/ssh/sshd_config这里面找到PasswordAuthenticationyes这一行将yes改为no。3.在终端软件Xshell下,生成自己的公私钥。点击下一步。点击下一步。输入密码后,点击下一步。点击下一步。保存为文件后,选择保存目录保存
Java开发中,spring mvc 的线程怎么调用?
小麦麦子
spring mvc
今天逛知乎,看到最近很多人都在问spring mvc 的线程http://www.maiziedu.com/course/java/ 的启动问题,觉得挺有意思的,那哥们儿问的也听仔细,下面的回答也很详尽,分享出来,希望遇对遇到类似问题的Java开发程序猿有所帮助。
问题:
在用spring mvc架构的网站上,设一线程在虚拟机启动时运行,线程里有一全局
maven依赖范围
bitcarter
maven
1.test 测试的时候才会依赖,编译和打包不依赖,如junit不被打包
2.compile 只有编译和打包时才会依赖
3.provided 编译和测试的时候依赖,打包不依赖,如:tomcat的一些公用jar包
4.runtime 运行时依赖,编译不依赖
5.默认compile
依赖范围compile是支持传递的,test不支持传递
1.传递的意思是项目A,引用
Jaxb org.xml.sax.saxparseexception : premature end of file
darrenzhu
xml premature JAXB
如果在使用JAXB把xml文件unmarshal成vo(XSD自动生成的vo)时碰到如下错误:
org.xml.sax.saxparseexception : premature end of file
很有可能时你直接读取文件为inputstream,然后将inputstream作为构建unmarshal需要的source参数。InputSource inputSource = new In
CSS Specificity
周凡杨
html 权重 Specificity css
有时候对于页面元素设置了样式,可为什么页面的显示没有匹配上呢? because specificity
CSS 的选择符是有权重的,当不同的选择符的样式设置有冲突时,浏览器会采用权重高的选择符设置的样式。
规则:
HTML标签的权重是1
Class 的权重是10
Id 的权重是100
java与servlet
g21121
servlet
servlet 搞java web开发的人一定不会陌生,而且大家还会时常用到它。
下面是java官方网站上对servlet的介绍: java官网对于servlet的解释 写道
Java Servlet Technology Overview Servlets are the Java platform technology of choice for extending and enha
eclipse中安装maven插件
510888780
eclipse maven
1.首先去官网下载 Maven:
http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.2.3-bin.tar.gz
下载完成之后将其解压,
我将解压后的文件夹:apache-maven-3.2.3,
并将它放在 D:\tools目录下,
即 maven 最终的路径是:D:\tools\apache-mave
jpa@OneToOne关联关系
布衣凌宇
jpa
Nruser里的pruserid关联到Pruser的主键id,实现对一个表的增删改,另一个表的数据随之增删改。
Nruser实体类
//*****************************************************************
@Entity
@Table(name="nruser")
@DynamicInsert @Dynam
我的spring学习笔记11-Spring中关于声明式事务的配置
aijuans
spring 事务 配置
这两天学到事务管理这一块,结合到之前的terasoluna框架,觉得书本上讲的还是简单阿。我就把我从书本上学到的再结合实际的项目以及网上看到的一些内容,对声明式事务管理做个整理吧。我看得Spring in Action第二版中只提到了用TransactionProxyFactoryBean和<tx:advice/>,定义注释驱动这三种,我承认后两种的内容很好,很强大。但是实际的项目当中
java 动态代理简单实现
antlove
java handler proxy dynamic service
dynamicproxy.service.HelloService
package dynamicproxy.service;
public interface HelloService {
public void sayHello();
}
dynamicproxy.service.impl.HelloServiceImpl
package dynamicp
JDBC连接数据库
百合不是茶
JDBC编程 JAVA操作oracle数据库
如果我们要想连接oracle公司的数据库,就要首先下载oralce公司的驱动程序,将这个驱动程序的jar包导入到我们工程中;
JDBC链接数据库的代码和固定写法;
1,加载oracle数据库的驱动;
&nb
单例模式中的多线程分析
bijian1013
java thread 多线程 java多线程
谈到单例模式,我们立马会想到饿汉式和懒汉式加载,所谓饿汉式就是在创建类时就创建好了实例,懒汉式在获取实例时才去创建实例,即延迟加载。
饿汉式:
package com.bijian.study;
public class Singleton {
private Singleton() {
}
// 注意这是private 只供内部调用
private static
javascript读取和修改原型特别需要注意原型的读写不具有对等性
bijian1013
JavaScript prototype
对于从原型对象继承而来的成员,其读和写具有内在的不对等性。比如有一个对象A,假设它的原型对象是B,B的原型对象是null。如果我们需要读取A对象的name属性值,那么JS会优先在A中查找,如果找到了name属性那么就返回;如果A中没有name属性,那么就到原型B中查找name,如果找到了就返回;如果原型B中也没有
【持久化框架MyBatis3六】MyBatis3集成第三方DataSource
bit1129
dataSource
MyBatis内置了数据源的支持,如:
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<data
我程序中用到的urldecode和base64decode,MD5
bitcarter
c MD5 base64decode urldecode
这里是base64decode和urldecode,Md5在附件中。因为我是在后台所以需要解码:
string Base64Decode(const char* Data,int DataByte,int& OutByte)
{
//解码表
const char DecodeTable[] =
{
0, 0, 0, 0, 0, 0
腾讯资深运维专家周小军:QQ与微信架构的惊天秘密
ronin47
社交领域一直是互联网创业的大热门,从PC到移动端,从OICQ、MSN到QQ。到了移动互联网时代,社交领域应用开始彻底爆发,直奔黄金期。腾讯在过去几年里,社交平台更是火到爆,QQ和微信坐拥几亿的粉丝,QQ空间和朋友圈各种刷屏,写心得,晒照片,秀视频,那么谁来为企鹅保驾护航呢?支撑QQ和微信海量数据背后的架构又有哪些惊天内幕呢?本期大讲堂的内容来自今年2月份ChinaUnix对腾讯社交网络运营服务中心
java-69-旋转数组的最小元素。把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个排好序的数组的一个旋转,输出旋转数组的最小元素
bylijinnan
java
public class MinOfShiftedArray {
/**
* Q69 旋转数组的最小元素
* 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个排好序的数组的一个旋转,输出旋转数组的最小元素。
* 例如数组{3, 4, 5, 1, 2}为{1, 2, 3, 4, 5}的一个旋转,该数组的最小值为1。
*/
publ
看博客,应该是有方向的
Cb123456
反省 看博客
看博客,应该是有方向的:
我现在就复习以前的,在补补以前不会的,现在还不会的,同时完善完善项目,也看看别人的博客.
我刚突然想到的:
1.应该看计算机组成原理,数据结构,一些算法,还有关于android,java的。
2.对于我,也快大四了,看一些职业规划的,以及一些学习的经验,看看别人的工作总结的.
为什么要写
[开源与商业]做开源项目的人生活上一定要朴素,尽量减少对官方和商业体系的依赖
comsci
开源项目
为什么这样说呢? 因为科学和技术的发展有时候需要一个平缓和长期的积累过程,但是行政和商业体系本身充满各种不稳定性和不确定性,如果你希望长期从事某个科研项目,但是却又必须依赖于某种行政和商业体系,那其中的过程必定充满各种风险。。。
所以,为避免这种不确定性风险,我
一个 sql优化 ([精华] 一个查询优化的分析调整全过程!很值得一看 )
cwqcwqmax9
sql
见 http://www.itpub.net/forum.php?mod=viewthread&tid=239011
Web翻页优化实例
提交时间: 2004-6-18 15:37:49 回复 发消息
环境:
Linux ve
Hibernat and Ibatis
dashuaifu
Hibernate ibatis
Hibernate VS iBATIS 简介 Hibernate 是当前最流行的O/R mapping框架,当前版本是3.05。它出身于sf.net,现在已经成为Jboss的一部分了 iBATIS 是另外一种优秀的O/R mapping框架,当前版本是2.0。目前属于apache的一个子项目了。 相对Hibernate“O/R”而言,iBATIS 是一种“Sql Mappi
备份MYSQL脚本
dcj3sjt126com
mysql
#!/bin/sh
# this shell to backup mysql
#
[email protected] (QQ:1413161683 DuChengJiu)
_dbDir=/var/lib/mysql/
_today=`date +%w`
_bakDir=/usr/backup/$_today
[ ! -d $_bakDir ] && mkdir -p
iOS第三方开源库的吐槽和备忘
dcj3sjt126com
ios
转自
ibireme的博客 做iOS开发总会接触到一些第三方库,这里整理一下,做一些吐槽。 目前比较活跃的社区仍旧是Github,除此以外也有一些不错的库散落在Google Code、SourceForge等地方。由于Github社区太过主流,这里主要介绍一下Github里面流行的iOS库。 首先整理了一份
Github上排名靠
html wlwmanifest.xml
eoems
html xml
所谓优化wp_head()就是把从wp_head中移除不需要元素,同时也可以加快速度。
步骤:
加入到function.php
remove_action('wp_head', 'wp_generator');
//wp-generator移除wordpress的版本号,本身blog的版本号没什么意义,但是如果让恶意玩家看到,可能会用官网公布的漏洞攻击blog
remov
浅谈Java定时器发展
hacksin
java 并发 timer 定时器
java在jdk1.3中推出了定时器类Timer,而后在jdk1.5后由Dou Lea从新开发出了支持多线程的ScheduleThreadPoolExecutor,从后者的表现来看,可以考虑完全替代Timer了。
Timer与ScheduleThreadPoolExecutor对比:
1.
Timer始于jdk1.3,其原理是利用一个TimerTask数组当作队列
移动端页面侧边导航滑入效果
ini
jquery Web html5 css javascirpt
效果体验:http://hovertree.com/texiao/mobile/2.htm可以使用移动设备浏览器查看效果。效果使用到jquery-2.1.4.min.js,该版本的jQuery库是用于支持HTML5的浏览器上,不再兼容IE8以前的浏览器,现在移动端浏览器一般都支持HTML5,所以使用该jQuery没问题。HTML文件代码:
<!DOCTYPE html>
<h
AspectJ+Javasist记录日志
kane_xie
aspectj javasist
在项目中碰到这样一个需求,对一个服务类的每一个方法,在方法开始和结束的时候分别记录一条日志,内容包括方法名,参数名+参数值以及方法执行的时间。
@Override
public String get(String key) {
// long start = System.currentTimeMillis();
// System.out.println("Be
redis学习笔记
MJC410621
redis NoSQL
1)nosql数据库主要由以下特点:非关系型的、分布式的、开源的、水平可扩展的。
1,处理超大量的数据
2,运行在便宜的PC服务器集群上,
3,击碎了性能瓶颈。
1)对数据高并发读写。
2)对海量数据的高效率存储和访问。
3)对数据的高扩展性和高可用性。
redis支持的类型:
Sring 类型
set name lijie
get name lijie
set na
使用redis实现分布式锁
qifeifei
在多节点的系统中,如何实现分布式锁机制,其中用redis来实现是很好的方法之一,我们先来看一下jedis包中,有个类名BinaryJedis,它有个方法如下:
public Long setnx(final byte[] key, final byte[] value) {
checkIsInMulti();
client.setnx(key, value);
ret
BI并非万能,中层业务管理报表要另辟蹊径
张老师的菜
大数据 BI 商业智能 信息化
BI是商业智能的缩写,是可以帮助企业做出明智的业务经营决策的工具,其数据来源于各个业务系统,如ERP、CRM、SCM、进销存、HER、OA等。
BI系统不同于传统的管理信息系统,他号称是一个整体应用的解决方案,是融入管理思想的强大系统:有着系统整体的设计思想,支持对所有
安装rvm后出现rvm not a function 或者ruby -v后提示没安装ruby的问题
wudixiaotie
function
1.在~/.bashrc最后加入
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
2.重新启动terminal输入:
rvm use ruby-2.2.1 --default
把当前安装的ruby版本设为默