本文为joshua317原创文章,转载请注明:转载自joshua317博客 https://www.joshua317.com/article/290 当集合名称带有特殊字符时,无法从shell命令行删除集合...报出错误: 2022-12-06T11:20:07.518+0000 E QUERY [thread1] ReferenceError: login is not defined : 问题不在于删除集合...正如mongodb JIRA中指出的那样,当集合中包含_,-或之类的字符时,这是一个错误,所以集合命名时最好不要有特殊字符。...尽管如此,这种类型的集合名称还是可以接受的,但是会在shell中引起问题。...可以使用以下命令在shell中将其删除: db.getCollection("my-login").drop() 或者 db['my-login'].drop() 本文为joshua317原创文章,
-H, --with-filename: 打印每个匹配项的文件名。 -h, --no-filename: 当搜索多个文件时,禁止在输出中使用文件名前缀。 --help: 显示帮助文件。...-L, --files-without-match: 禁止正常输出,而是打印通常不会从中打印输出的每个输入文件的名称,扫描将在第一个匹配时停止。...-l, --files-with-matches: 禁止正常输出,而是打印通常从中打印输出的每个输入文件的名称,扫描将在第一个匹配时停止。...在某些情况下,--mmap可以产生更好的性能。但是,如果在grep操作时输入文件收缩,或者发生I/O错误,那么--mmap可能会导致未定义的行为(包括核心转储)。...-v, --invert-match: 反转匹配的意义,以选择不匹配的行。 -w, --word-regexp: 只选择与表单中包含的单词匹配的行。
与构造函数相反,当对象结束其生命周期,如对象所在的函数已调用完毕时,系统会自动执行析构函数。...应用 类型强制转换也可以应用于两个"不兼容"的数据类型。 仅当两个数据类型"兼容"时,才能实现类型转换。 算子 要将数据类型强制转换到另一个数据类型,需要强制转换运算符"()"。 无需操作符。...通过man ,例如man grep [119] 编写UNIX/Linux命令完成以下任务,假设文件名为file.txt 显示文件的前10行 显示文件的第10行 从文件中删除第...13行 从文件中删除最后一行 反转字符串(例如:“ Hello” ) 检查上一条命令是否成功 查找文件中的行数 查找文件中的字符数 查找文件中第17行的字符数 获取第三个单词文件中第17行的内容 将所有用户的文件权限更改为...,假设文件名为file.txt 所有匹配“cat”的行 所有单词“ cat”的行 所有不包含“cat”的行 所有包含单词“ cat”的行(不区分大小写) 所有以“cat”开头的行 所有以“ cat”结尾的行
查找包含特定单词的句子 假设我们想要匹配文本中包含特定单词的所有句子。 因为需要在搜索结果中显示这些句子,或者想从文本中删除它们。 正则表达式/[^.!?]*\bword\b[^.!?]*.?...匹配.所匹配到的结果的 0 次或者 1 次 g 告诉正则表达式引擎匹配所有匹配项,而不是在第一次匹配后停止 i 使搜索不区分大小写 从文件名中去除无效字符 下载的文件时,其名称中不应包含某些字符。...Windows 内部还使用了几个保留名称来执行各种任务,并且这些保留名称不允许用作文件名,保留名称如下: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5...用单个空格替换多个空格 当网页渲染时,重复的空格字符被显示为单个空格。 但是,有时我们希望用户输入或其他数据中包含的多个空格,我们只想用用单个空格来表示。...请注意,上面示例中的结果在开始时仍具有空白字符,应将其删除。
一:drop use accounting drop table customers 删除表 use master drop database accounting 删除数据库 这里删除数据库...,可以把数据存储到多个文件上(这只应用在超大型数据库上) name是文件的逻辑名称,调整数据库文件大小时要用到这个名称 filename可选的参数,如果不使用这个参数,那么这个文件就存在MSSQL.1\...MSSQL\DATA目录下 如果是数据文件那么名称与数据库名称相同,扩展名是.mdf 如果是日志文件那么名称是数据库名后跟一个_log,扩展名是.ldf size数据库的大小,可以带单位也可以直接写整数...,不能写小数 maxsize数据库能增大到的最大大小,如果不设置这个参数,那么就是磁盘的大小,建议设置一个数字比磁盘小一点 filegrowth数据库每次增长将增长多少,可以是整数,百分数 log on...,长度要足以使名称具有描述性 2:当基于其他表来构造表时,新表的名称中其包含父表的名称 3:当名称中有两个单词时,不要使用任何分隔符,每个单词首字母大写 三:ALTER alter database
但是,当字符串包含单引号或双引号字符时,请使用另外一个以避免在字符串中使用反斜杠。它提高了可读性。 对于三引号字符串,请始终使用双引号字符以与PEP 257中的docstring约定一致。...通常不建议使用复合语句(一行代码包含多条语句)。...在某些字体中,这些字符与数字1和零没有区别。当尝试使用“ l”时,请改用“ L”。 ASCII兼容性 标准库中使用的标识符必须与PEP 3131的策略部分中所述的ASCII兼容 。...函数和变量名 函数名称应小写,必要时用下划线分隔单词,以提高可读性。 变量名与函数名遵循相同的约定。...方法名称和实例变量 使用函数命名规则:小写字母,必要时用下划线分隔单词,以提高可读性。 仅对非公开方法和实例变量使用前导下划线。
关于范围请看第5点,常用的组合有:caw - 删除一个单词包括它后面的空格并开始插入;ciw - 删除一个单词并开始插入;ci" - 删除一个字符串内部文本并开始插入;c$ - 从光标位置删除到行尾并开始插入...(例如dd删除一行,yy复制一行,cc删除一行文本并开始插入,>> 当前行缩进一格,==自动缩进当前行) $ - 从光标位置到行尾 ^ - 从光标位置到行首,不包含缩进空白 0 - 从光标位置到行首,包含缩进空白...i" - 一个字符串内部文本 a包含的文本,包括号本身 同理类推:i<, a[, i[, a(, i( 注意:真正vim中的it范围(一对xml标签内部)在ideaVim中不生效...但只有删除超过1行时才会影响寄存器1至9,行内的删除内容则会被存入寄存器-(减号)。 如果用q命令录制宏时不涉及跨行删除,可以在宏中直接使用这9个寄存器来暂存文本。...如果录制的宏不涉及删除大段代码,寄存器1至9也可以用来进行复制粘贴。 执行一次宏后,可以用@@命令重复上一次执行的宏。
* 列出文件绝对路径(不包含隐藏文件) ls | sed "s:^:`pwd`/:" 列出文件绝对路径(包含隐藏文件) find $pwd -maxdepth 1 | xargs ls -ld cd 命令...不能删除非空目录 实例 当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除: rmdir -p parent/child/child11 mv 命令 移动文件或修改文件名,根据第二参数类型...tail 命令 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。...\< #锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。 \> #锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。...常用参数 -l 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称 -a 当处理当前进程时,不限制命令名和进程号的对应关系 -p 指定kill 命令只打印相关进程的进程号,而不发送任何信号
当要区别接口类和实现类的时候,可以在类的后面加上“Impl”。...xml配置文件很多用_.xml的方式,但我看的项目却用mybatis-config.xml,所以暂时不统一。...例如,如果在代码的某些区域中使用intCnt,而在另一些区域中又使用intCount,就会给代码增加不必要的复杂性。建议变量名中尽量不要出现缩写。...数据层方法:只能以insert(插入),delete(删除),update(更新),select(查找),count(统计)开头,其他层方法避免以这个5个单词开头,以免造成误解。...服务层方法,根据方法的行为命名,只描述方法的意义,而不采用方法的目的命名。
关–从父样式格式中删除该属性。 一个数字-该值替换父样式属性。 =(等于)-该属性无效,并且它继承与父样式完全相同的值。样式名称列表 列出所有语法格式样式。...删除样式 单击此按钮删除用户定义的样式。标准内置样式无法删除。 加载… 单击此按钮可以从配置文件中加载新的样式表。 保存 单击此按钮可将当前样式表设置保存到新的样式配置文件。...固定空白 仅当您选择了按比例隔开的字体时,此选项才适用。固定间距字体(例如Courier New)不受影响。...通常,您将在程序中键入标识符的名称,但是您可以在此处键入任何字符串,并且将在项目范围内进行搜索。如果仅键入一个单词,搜索将非常快。 搜索范围 此下拉列表包含文件类型列表。...关键字搜寻结果 当您执行关键字搜索时,“搜索结果”将列出同时包含关键字的行块。 这为您提供了有关比赛的一些背景信息。 ? 搜索界面 ? 文件树 ? 这个是文件夹的 右键菜单 ? 打开左栏的符号树 ?
当程序无法正确处理非ASCII字符时,它自然无法正确运行, 你就会去fix这些问题的了。(言下之意就是大胆去用非ASCII字符,如果真的有需要的话) 3....4.8.4.3 default的情况要写出来 每个switch语句都包含一个default语句组,即使它什么代码也不包含。...名词,采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的, 比如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写。...资源文件(图片drawable文件夹下): 全部小写,采用下划线命名法,加前缀区分 命名模式:可加后缀 _small 表示小图, _big 表示大图,逻辑名称可由多个单词加下划线组成,采用以下规则: 用途...当整个Javadoc块能容纳于一行时(且没有Javadoc标记@XXX),可以使用单行形式。
Ctrl + k 删除光标所在位置之后的所有字符 Ctrl + w 删除光标之前的一个单词 Ctrl + d 结束当前输入、退出shell Ctrl + s 可用来停留在当前屏...-n 用数字的 UID,GID 代替名称。...tips: ls -l 等价于 ll ls *.txt 匹配目录下所有.txt为后缀的文件 ls test* 匹配目录下所有名称包含test的文件 使用示例: 当前目录下没有文件时使用ls...此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。...语法:rmdir [-p][dirName] 适用对象:具有当前目录操作权限的所有使用者 功能:删除空目录 常用选项: -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
可以理解是纯粹的任务,而不生成文件。...不同的是 make 变量的名称可以是任何不包含 :, #, = 和空字符的字符序列,并且等号两边可以有空格(shell 定义变量的等号两个不允许出现空格)。...当 pattern 和 replacement 同时包含通配符 %,则将 replacement 中 % 替换成与 pattern 中 % 匹配的文本。...4.2.4 $(sort list) 按英文字母表顺序对列表 list 中的单词进行排序,删除重复的单词。输出是由单个空格分隔的单词列表。...隐式规则 某些重新生成目标文件的方式非常常用。例如,使用 C 编译器 cc 从 .c 源文件编译生成 .o 目标文件。
-d 或 --directories= : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。...-h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。 -H 或 --with-filename : 在显示符合样式的那一行之前,表示该行所属的文件名称。...-l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。 -L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。...查找文件名中包含 test 的文件中不包含test 的行,此时,使用的命令为: grep -v test *test* 结果如下所示: $ grep-v test* #查找文件名中包含test 的文件中不包含...但有以下限制,不识别:/x、函数关键字、func、换码序列以及当fs是一个空格时,将新行作为一个域分隔符;操作符**和**=不能代替^和^=;fflush无效。
而且这些命令大都可以进行组合 , 比如,9yy命令表示复制9行内容,9表示要复制的行数,同样100dd表示删除100行,当数字和命令合作的时候,就比单纯的命令更强大,同样,c命令 表示擦除,w表示word...即单词,那么cw就表示擦除一个单词,c5w就表示删除5个单词等等。...其他 vim在保存之前不会对文件做实际的修改,只是加载到缓冲区中,对文件的编辑其实是对缓冲区的编辑,直到:w时才会存入物理文件。 ? 退出编辑器 ? 查找替换 ? 复制粘贴 ?...附:比如常用的一个寄存器就是系统寄存器,名称为+,所以从系统粘贴板粘贴到vim中的命令为"+p,注意此处的+不表示操作符,二十一个寄存器。...当 “n” 省略时,被默认为零。当 “m” 省略时,被默认为无限大。当 “,m” 省略时,就表示重复正好 “n” 次。
当只有一个“:”时,默认第三个参数step=1;当一个“:”也没有时,start_index=end_index,表示切取start_index指定的那个元素。...end_index:表示终止索引(不包含该索引对应值);该参数省略时,表示一直取到数据“端点”,至于是到“起点”还是到“终点”,同样由step参数的正负决定,step为正时直到“终点”,为负时直到“起点...这里要注意,虽然有一些比较老的模块仍然用的是MyModule这种命名方法,但是现在已经不推荐这样命名了。因为,当一个模块和一个类同名的时候,我们就搞不清楚到底指的是类还是模块了。...因为这种变量名里面不包含任何信息,变量稍微多一点,程序稍微长一点,很容易就搞不清楚谁是谁、每个变量是干什么的了。...,我们倾向于直接保存为文件,当我们修改某些参数后再一次运行时,之前运行时生成的文件就被覆盖了。
使用$支持简单的变量替换,其中美元符号后的单词被替换为变量的值。如果没有非变量名字符来终止变量名称,可以选择{}包围名称。更复杂的表达式不被支持,仅支持变量名称替换。...这个主要的用例是当一个外部脚本返回几个已知的值,并且你想提取它们。在某些情况下,如果您要添加到列表中,则很容易覆盖列表。为了帮助理解这种情况,将非空列表分配给包含现有非空列表的变量是错误的。...作用域和执行 文件和函数调用后面跟着{ }块引入新的作用域。作用域是嵌套的。当您读取一个变量时,将会以相反的顺序搜索包含的作用域,直到找到匹配的名称。变量写入总是进入最内层的作用域。...您的.gni文件可以定义不导出到文件临时变量,通过使用名称中的前面的下划线来包含它,就像_this。 2. 路径处理 通常情况下,您需要创建一个文件名或相对于不同目录的文件名列表。...您可以同步读取和写入在同步运行脚本时不鼓励但偶尔需要的文件。典型的用例是传递一个比当前平台的命令行限制长的文件名列表。
Grep命令用于查找文件中的特定模式,并输出包含搜索模式的所有结果。 另一方面,Awk也用于在文件中搜索某些模式,但会继续在模式匹配上执行某些任务。...为了仅匹配整个单词,我们使用“ -w”标志 linuxmi@linuxmi:~/www.linuxmi.com$ grep -w "linuxmi" linuxmi.txt 要在搜索中包含子目录,...在这种情况下,我们将输出不包含单词“linuxmi”的其他任何内容。...它使您能够以语句形式编写简单有效的程序,以在文件中搜索特定模式,并在找到匹配项时执行操作。 当使用' awk '时,我们将花括号括起来。 模式和动作都形成规则,整个awk程序都用单引号引起来。...它可以用于执行不同的功能,例如搜索,查找和替换,插入和删除。 但是,查找和替换很常见,您无需打开文件即可替换单词。
选项“-r”用以删除指定名称的补全方法,不指定名称时删除所有的名称的补全方法。选项“-D”的意思是其后的选项和动作将应用到默认命令补全,也就是说之前未定义的补全命令也可以补全。...“-o noquote”:告诉“readline”不引用文件名,默认会进行引用。 “-o nospace”:告诉“readline”在补全的名称后不添加空格,默认添加空格。...“-X filterpat”:filterpat是进行文件名扩展时使用的模式,它作用于通过前面的选项和参数生成的补全列表,并把每个与过滤模式匹配的条目删除,模式中前导的叹号表示否定,这时会删除与过滤模式不匹配的条目...COMP_CWORD:在包含当前光标位置的单词“${COMP_WORDS}”中的下标,这个变量只能在可编程补全的shell函数中使用。...COMP_WORDS:一个数组变量,包含当前命令行的每个单词,与“readline”一样当前行被COMP_WORDBREAKS拆分成单词,这个变量只能在可编程补全的shell函数中使用。
运行 add 时,允许添加否则忽略的子模块路径。当运行 deinit 时,子模块工作树将被删除,即使它们包含本地更改。...特别是,即使是创建或删除,/dev/null也是 _ 而不是 _ 来代替a/或b/文件名。 当涉及重命名/复制时,file1和file2分别显示重命名/复制的源文件的名称和重命名/复制的文件的名称。...但是,它们的父列表会被重写:沿着每个父项删除不包含在其中的提交。这导致了 ....特别是,即使是创建或删除,/dev/null也是 _ 而不是 _ 来代替a/或b/文件名。 当涉及重命名/复制时,file1和file2分别显示重命名/复制的源文件的名称和重命名/复制的文件的名称。...--include= 将更改应用于与给定路径模式匹配的文件。在导入要包含某些文件或目录的补丁集时,这非常有用。
领取专属 10元无门槛券
手把手带您无忧上云