精华内容
参与话题
问答
  • 在撸项目的过程中,多多少少掌握了一些有意思的shell技巧。于是打算总结一下,一来希望自己不容易忘掉,二来可以做一定的分享。 1.安装tree $ pip install tree tree在linux环境下,使用十分方便。 $ cd my_...

    在撸项目的过程中,多多少少掌握了一些有意思的shell技巧。于是打算总结一下,一来希望自己不容易忘掉,二来可以做一定的分享。


    1. 安装tree

    $ pip install tree

    tree在linux环境下,使用十分方便。

    $ cd my_folder
    $ tree

    在指定文件环境下,直接输入tree就可以得到目录的分支结构图,如下:

    ├── ddor.py
    ├── ion.py
    ├── crop.jpg
    ├── eval.py
    ├── font
    │   ├── adobe_chinese_otf.7z
    │   ├── AdobeFangsongStd-Regular.otf
    │   ├── AdobeHeitiStd-Regular.otf
    │   ├── AdobeKaitiStd-Regular.otf
    │   ├── asl.otf
    │   ├── FiraMono-Medium.otf
    │   └── SIL Open Font License.txt
    ├── imgs_for_test
    │   ├── 1.jpg
    │   └── 2.jpg
    ├── qpp.py
    ├── kms.py
    ├── model_data
    │   ├── classes.txt
    │   └── chors.txt
    │ 
    └── yuq.py

    这样就可以清晰看到如上的结构图了。但直接输入tree,会直接显示到最小枝叶的文件。对于很多文件夹,比如图片,有大量图片,那么会导致这个结构图非常长不便于观看。如果不想显示到那么细枝末节,可以用以下指令:

    $ tree -L 2

    这样就显示到二级目录,"tree -L 3"会显示到三级目录,以此类推。"tree -L 1"会显示当前目录,如下:


    ├── ddor.py
    ├── ion.py
    ├── crop.jpg
    ├── eval.py
    ├── font
    ├── imgs_for_test
    ├── qpp.py
    ├── kms.py
    ├── model_data
    └── yuq.py


    2. vim显示行数

    使用vim经常需要知道行数,每次需要输入“: set number”来显示行数会很麻烦。不过,有一种一劳永逸的方法,可以在每次打开vim的时候都会显示行数。

    直接:

    vim ~/.vimrc

    在这个新文件里输入:

    set number

    保存退出就可以了,不用进行source。

    然后效果就出来了,每用vim打开一个文件都会默认显示行数,非常方便,如下:

     


    3. 统计文件数 

    ll *.jpg | wc -l

    wc -l表示显示行数, ll *.jpg表示列出所有jpg文件。

    结合到一起使用就是显示有多少个jpg文件。 


    4. 查看apt-get安装的软件列表:

    apt-cache search all

    查找安装列表关键词,例如关键词为“python”

    apt-cache search all | grep python

    5. 按时间顺序显示当前目录的所有文件:

    ll -rt

    6. 查看内存使用情况

    $ sudo apt-get install htop
    $ htop

    7. 删除命令行整行

    经常terminal里不小心多敲的东西,想直接删掉整行:

    ctrl+u

    或者,以光标为起点,后面的全删除:

    ctrl+k


    8. 光标移到最前和最后

    ctrl + a 

    ctrl + e

    展开全文
  • 小技巧

    2018-04-16 16:12:01
    题很简单是水题荷兰国旗问题时间限制:3000 ms | 内存限制:65535 KB难度:1描述 荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使...


    题很简单是水题

    荷兰国旗问题

    时间限制:3000 ms  |  内存限制:65535 KB
    难度:1
    描述
     
    荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使所有相同颜色的条块在一起。本问题要求将所有红色的条块放最左边、所有白色的条块放中间、所有蓝色的条块放最右边。
    输入
    第1行是一个正整数n(n<100),表示有n组测试数据。接下来有n行,每行有若干个由R,W,B三种字符构成的字符串序列,其中R,W和B分别表示红、白、蓝三种颜色的条块,每行最多有1000个字符。
    输出
    对输入中每行上由R,W,B三种字符构成的字符串序列,将它们重新排列使所有相同颜色的条块在一起,满足前述要求。
    样例输入
    3
    BBRRWBWRRR
    RRRWWRWRB
    RBRW 
    
    样例输出
    RRRRRWWBBB
    RRRRRWWWB
    RRWB 

    代码:

     
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int n,i,e,f,g;
        string a;
        cin>>n;
        getchar();
        while(n--)
        {
            e=f=g=0;
            cin>>a;
            for(i=0;i<a.size();i++)
            {
                if(a[i]==82)
                    e++;
                if(a[i]==87)
                    f++;
                if(a[i]==66)
                    g++;
            }
            while(e--)
                cout<<"R";
            while(f--)
                cout<<"W";
            while(g--)
                cout<<"B";
            cout<<endl;
        }
        return 0;
    }        

    主要是想让你看这个地方可以这么用

      while(e--)
    while(f--)
     while(g--)
    如果用for循环写三行for(i=1;i<=e;i++)会非常麻烦,而用如上while格式就非常简便了
    展开全文
  • 小技巧汇总

    2018-04-08 23:01:00
    1、ArrayList与数组转换 ArrayList arrListSQL = new ArrayList(); string[] sqls = (string[])arrListSQL.ToArray(typeof(string));   2、ArrayLIst 拼接成字符串,拼接后,后面没有“,”不需要再处理 ...

    1、ArrayList与数组转换

    ArrayList arrListSQL = new ArrayList();

    string[] sqls = (string[])arrListSQL.ToArray(typeof(string));

     

    2、ArrayLIst 拼接成字符串,拼接后,后面没有“,”不需要再处理

    ArrayList arrList = new ArrayList();
    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
    {
      arrList.Add(ds.Tables[0].Rows[i]["GUID"].ToString());
    }

    string LinkGuid = string.Join(",", arrList.ToArray());

     

    3、在 C# 中可以对字符串使用 PadLeft 和 PadRight 进行轻松地补位。

    int i=10;
    方法1:Console.WriteLine(i.ToString("D5"));
    方法2:Console.WriteLine(i.ToString().PadLeft(5,'0'));//推荐
    方法3:Console.WriteLine(i.ToString("00000")); 
     

     

    初见 string.Format("{0,-10}", 8)

    做 .net 开发也若干年了,如此写法(下面代码中黄色高亮部分)确是我第一次见(更别提用了):

    1
    2
    3
    4
    var s1 = string.Format("{0,-10}", 8);
    var s2 = string.Format("{0,10}", 8);
    var s3 = string.Format("{0,20:yyyy-MM-dd}", DateTime.Today);
    var s4 = string.Format("4G 内存便宜了{0,12:C2},我打算买{1,4}条", 145, 2);

    大括号中,索引后 分号前,有一个逗号和一个整数(减号表示负数)。

    会格式化成为什么样子呢?看下调试截图吧:

    image

    从上图中能大致看出此端倪,没错:

    string.Format("{0,-10}", 8) 等同于 string.Format("{0}", 8).PadRight(10)

    string.Format("{0,10}", 8) 等同于 string.Format("{0}", 8).PadLeft(10)。

    MSDN上的说明

    String.Format 方法 format 参数由零或多个文本序列与零或多个索引占位符混合组成,其中索引占位符称为格式项,对应于与此方法的参数列表中的对象。 格式设置过程将每个格式项替换为相应对象值的字符串表示形式。

    格式项的语法如下:

    {index[,length][:formatString]}

    方括号中的元素是可选的。 下表描述每个元素。 有关复合格式设置功能(包括格式项的语法)的更多信息,请参见复合格式

    元素

    说明

    索引

    要设置格式的对象的参数列表中的位置(从零开始)。 如果由 index 指定的对象为null,则格式项将被 String.Empty 替换。 由于该重载在其参数列表中只有单个对象,index 的值必须始终为 0。 如果 index 位置没有参数,将引发FormatException

    ,length

    参数的字符串表示形式中包含的最小字符数。 如果该值是正的,则参数右对齐;如果该值是负的,则参数左对齐。

    :formatString

    要设置格式的对象支持的标准或自定义格式字符串。 formatString 的可能值与该对象的 ToString(format) 方法支持的值相同。 如果没有指定 formatString,并且要设置格式的对象实现了 IFormattable 接口,则将传递 null 作为用作IFormattable.ToString 格式字符串的 format 参数的值。

    MSDN 原文链接:Format 方法 (String, Object)

    优点和缺点

    优点:

    ,length 其实把 String.PadLeft 和 String.PadRight 的功能融合在的 String.Format 方法中,简化了代码的编写。

    如果没有这种格式,代码写起来麻烦多了:

    1
    2
    3
    var s5 = string.Format("4G 内存便宜了{0},我打算买{1}条",
        145.ToString("C2").PadLeft(12),
        2.ToString().PadLeft(4));

    缺点:

    看起来不直观,复杂,如文首代码中的 “我打算买{1,4}条”。

    实际使用少,没用过的看了很纳闷。

     

    4、取字符串实际长度

    Encoding.GetEncoding("gb2312").GetBytes(test).Length

    展开全文
  • 小技巧

    2019-07-18 08:50:58
    1、升级node的时候 用nvm install 会很慢 解决方法 在你nvm的安装路径下,找到settings.txt打开,在后面加加上 node_mirror:https://npm.taobao.org/mirrors/node/ ... 2、端口被占用解决方法 a....b....

    1、升级node的时候 用nvm install 会很慢 解决方法

    在你nvm的安装路径下,找到settings.txt打开,在后面加加上

    node_mirror: https://npm.taobao.org/mirrors/node/
    npm_mirror: https://npm.taobao.org/mirrors/npm/

    2、端口被占用解决方法

    a.打开命令窗口

    b.输入命令:netstat -ano

    c.netstat -aon|findstr "8080"(查找被占用的端口,假如被占用的端口是8080),找到被占用的端口对应的PID

    d.tasklist|findstr "被占用的PID"

    3、SVN提交忽略node_modules 

    项目目录下执行命令svn propset svn:ignore node_modules .

    查看忽略的文件夹:svn status --no-ignore

     

    展开全文
  • 小技巧

    2019-08-09 02:58:33
    1 while i<n-2{while and i<n-2 while and i<n-2} 3个一样的while 1嵌套{2} 可以实现 goto one 回退功能
  • 9个好用的搜索小技巧

    2020-06-23 17:22:14
    搜索是我们常用的工具,怎么又快又准的搜索出想要的结果是现代人必备的技能,下面就教你9个好用的搜索小技巧吧 完全匹配搜索。 在查询词的外边加上双引号“”。 如 “北京地坛” ,注意引号是不分中英文的。 那么...
  • Intellij IDEA神器那些让人爱不释手的小技巧

    万次阅读 多人点赞 2018-06-03 22:47:16
    在2018年5月6日写了一篇介绍IntellIJ IDEA的文章,Intellij IDEA神器居然还有这些小技巧,主要是列出一些平时大家可能没用过或者没怎么用,但是又非常好用的IntellIJ IDEA小技巧。由于篇幅原因,只是列出了一小部分,...
  • Intellij IDEA神器居然还有这些小技巧

    万次阅读 多人点赞 2018-05-06 13:17:01
    概述 Intellij IDEA真是越用越觉得它强大,它总是在我们写代码...本文是这个系列的第一篇,主要介绍一些你可能不知道的但是又实用的小技巧。 我最爱的【演出模式】 我们可以使用【Presentation Mode】,...
  • mysql使用小技巧

    千次阅读 2016-05-03 10:34:45
    1、MySQL中有许多很实用的函数,好好利用它们可以省去很多时间:group_concat() 将取到的值用逗号连接,可以这么用:select group_concat(distinct id) from tablename;得到的结果类似为: 1,2,3,4,5unix_timestamp(), ...
  • 1、轮播组件&lt;swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}"...swiper-it
  • django小技巧

    千次阅读 2016-01-14 08:58:28
    request.get_host() 获取请求地址 request.path 获取请求的path,不带参数 request.get_full_path() 获取完整参数 可以在template中去掉括号直接使用。
  • bat实用小技巧

    千次阅读 2012-09-18 23:37:04
    网上流传着很多DOS小技巧,但是,以现在的眼光重新审视,它们有些并不适用于批处理。编写批处理代码一年多来,本人积累了一些实用的批处理代码编写技巧,现发出来大家一起分享。若能善用这些代码,将会大大简化各位...
  • unity实用小技巧

    千次阅读 2018-03-16 13:00:38
    这里对我平时也用得少的但是unity比较实用的技巧分享一二: 1:运行时更改的一些属性数值在退出程序时会还原,如果想要保留数据,可以在运行时右键复制组件(copy component),然后退出程序时右键粘贴组件值即可...
  • 100个GDB小技巧(一)

    千次阅读 2017-08-20 22:20:12
    本文是100个GDB小技巧阅读总结,100个GDB小技巧.列出函数的名字在这个例子中源代码如下:#include #include void *thread_func(void *p_arg) { while (1) { sleep(10); } } int main(void
  • java实用小技巧

    千次阅读 2018-05-10 20:33:34
    遍历数组 Arrays.toString(); Arrays.deepToString(); 第一种常用于一维数组的打印 第二种常用于多维数组的打印
  • Android Studio 小技巧合集

    万次阅读 2016-02-18 22:38:40
    根据这些小技巧的使用场景,本文将这62个小技巧分为常用技巧(1 – 28)、编码技巧(29 – 49)和调试技巧(50 – 62),分成三个部分。 每个小技巧都配有 gif 动图,由于原图在 google pho
  • CodeBlocks使用小技巧

    千次阅读 2017-11-07 20:36:29
    这里介绍一下一些CodeBlocks的几个小技巧吧。。(大多数人都肯定知道吧)自定义模板这个东西是在这几天(问学长)知道的 教练在NOIP前找了60+基础题,但是头文件读入优化那些东西打起来就十分费事了,即便复制的话也要...
  • 工作中这些实用的小技巧,90%的程序员不知道

    千次阅读 多人点赞 2019-09-08 20:16:14
    Linux 有些Linux命令我们是经常用的,但是这些命令有的特别长(如进入层级特别深的项目部署目录),这时就可以为这些命令定义一个别名 系统级别定义的别名 所有的用户都能使用这个别名 例如想直接通过ssh跳转到21这...
  • JMeter小技巧

    千次阅读 2019-02-25 00:22:23
    此文介绍一些在Jmeter使用过程中通常会用到的一些小技巧: 1、Jmeter将测试结果导出Excel 2、Jmeter返回乱码解决方法 3、Jmeter请求参数读CSV中文乱码 4、Jmeter读取CSV文件数据有引号 Jmeter运行结果导出...
  • JavaScript实用小技巧

    万次阅读 2018-11-11 10:57:35
    JS打开窗口的两种方式 方式一: 使用超链接 &lt;a href="https://www.csdn.net/" title="CSDN"&gt;CSDN&lt;/a&gt; 等效于js代码 window.location.href="...

空空如也

1 2 3 4 5 ... 20
收藏数 586,253
精华内容 234,501
关键字:

小技巧