分隔符

上传文件multipart form-data boundary 说明

匿名 (未验证) 提交于 2019-12-02 23:52:01
含义 ENCTYPE="multipart/form-data" 说明: 通过 http 协议上传文件 rfc1867协议概述,客户端发送内容构造。 在最初的 http 协议中,没有上传文件方面的功能。 rfc1867为 http 协议添加了这个功能。客户端的浏览器,如 Microsoft IE, Mozila, Opera 等,按照此规范将用户指定的文件发送到服务器。服务器端的网页程序,如 php, asp, jsp 等,可以按照此规范,解析出用户发送来的文件。Microsoft IE, Mozila, Opera 已经支持此协议,在网页中使用一个特殊的 form 就可以发送文件。绝大部分 http server ,包括 tomcat ,已经支持此协议,可接受发送来的文件。各种网页程序,如 php, asp, jsp 中,对于上传文件已经做了很好的封装。 <form action="upFile.php" enctype="multipart/form-data" method="post"> <input name="myflie" type="file" /> <input type="submit" /> 注意 enctype="multipart/form-data", method=post, type="file" 。根据 rfc1867, 这三个属性是必须的

文件上传下载,命令之wget / curl / which / sort / uniq / cut / wc

匿名 (未验证) 提交于 2019-12-02 23:45:01
Ŀ¼ [root@oldboyedu ~]# yum install -y lrzsz #安装包 rz:上传文件 (直接拖拽文件) 1)不支持上传超过4G的文件 2)不支持断点续传 sz:下载文件 示例:sz filename wget 文件下载 -O 指定地址下载,更改名称 -T 超时时间 -q 安静下载(关闭wget输出) --spider 网络爬虫 示例: Wget http://www.baidu.com 如果没有,则安装:yum install -y wget -O:指定下载的路径,可以改名 -o:指定下载的路径,可以改名 示例: Curl -o http://www.baidu.com Which查找系统mv目录下的命令(绝对路径) [root@oldboyedu ~]# which mv alias mv='mv -i' /usr/bin/mv Type了解 [root@oldboyedu ~]# type -a ls ls is aliased to `ls --color=auto' ls is /usr/bin/ls [root@oldboyedu ~]# type -a for for is a shell keyword -t 指定分隔符 -k 指定第几列的内容(按分隔符),不指定分隔符,默认是空格为分隔符 -n 按照阿拉伯数字的大小顺序排序 -r 倒叙

5. 最长回文子串

匿名 (未验证) 提交于 2019-12-02 23:43:01
s s 1000 1 : "babad" : "bab" : "aba" 2 : "cbbd" : "bb" 解法 1:中心扩散 思路很简单:遍历每一个索引,以这个索引为中心,往两边扩散,看最多能扩散多远。具体的做法是利用“回文串”中心对称的特点,在枚举子串的过程中进行剪枝。要注意一个细节:回文串的长度可能是奇数,也可能是偶数。 我们完全可以设计一个方法,兼容以上两种情况: 1、如果传入重合的索引编码,进行中心扩散,此时得到的最长回文子串的长度是奇数; 2、如果传入相邻的索引编码,进行中心扩散,此时得到的最长回文子串的长度是偶数。 Python: class Solution: def longestPalindrome(self, s): size = len(s) if size == 0: return '' # 至少就是 1 longest_palindrome = 1 longest_palindrome_str = s[0] for i in range(size): # 返回当前最长回文子串、和这个最长回文子串的长度 palindrome_odd, odd_len = self.__center_spread(s, size, i, i) palindrome_even, even_len = self.__center_spread(s, size, i, i +

Fortify漏洞之Portability Flaw: File Separator 和 Poor Error Handling: Return Inside Finally

匿名 (未验证) 提交于 2019-12-02 23:43:01
Fortify漏洞之Portability Flaw: File Separator 和 Poor Error Handling: Return Inside Finally 1、Portability Flaw: File Separator(文件分隔符) 1.1、产生原因:   不同的操作系统使用不同的字符作为文件分隔符。例如,Microsoft Windows 系统使用“\”,而 UNIX 系统则使用“/”。应用程序需要在不同的平台上运行时,使用 硬编码文件分隔符 会导致应用程序逻辑执行错误,并有可能导致 denial of service(拒绝服务)。 例 1 :以下代码使用硬编码文件分隔符来打开文件: ... "\\" 1.2、修复方案:   为编写可移植代码, 不应使用硬编码文件分隔符 ,而应使用语言库提供的独立于平台的 API。 例 2 : 下列代码执行与例 1 相同的功能,但使用独立于平台的 API 来指定文件分隔符: ... File file = new File(directoryName + 2、Poor Error Handling: Return Inside Finally 2.1、产生原因: 例 1 : public static void doMagic() throws Exception {   try { //1. 抛出异常 //2.

IOUtils使用介绍

匿名 (未验证) 提交于 2019-12-02 23:42:01
在下面的例子,我们将详细说明如何使用 org.apache.commons.io 包中的 IOUtils类如何使用,通过包名我们可以知道它是 Apache Commons IO 的一部分 。该类的所有成员函数都被用来处理输入 - 输出流,它的确非常利于来编写处理此类事务的程序。IOUtils与其他Apache Commons中的类一样,都是处理IO操作的非常重要包装器,与手动编写这些功能的其他程序相比,它们实现这些方法的代码变得更小,更清晰,更易理解。 1. IOUtils类,字段和方法简介 IOUtils类的所有成员字段和方法都是静态的,因此在标准编程中不需要创建IOUtils类的对象,而是通过类名和适当的方法名来使用它。如:IOUtils.method1 ()。 2. IOUtils 字段 static char DIR_SEPARATOR:目录分隔符 static char DIR_SEPARATOR_UNIX:Unix系统的目录分隔符 static char DIR_SEPARATOR_WINDOWS:Windows系统的目录分隔符 static String LINE_SEPARATOR:行分隔符 static String LINE_SEPARATOR_UNIX:Unix系统的行分隔符 static String LINE_SEPARATOR_WINDOWS

小白成长之路3

匿名 (未验证) 提交于 2019-12-02 23:35:02
文件管理 1. 文件通配符 * 匹配零个或多个字符 ? 匹配任何单个字符 ~ 当前用户家目录 ~papo 用户papo的家目录 ~+ 当前工作目录 ~- 前一个工作目录 [0-9] 匹配数字范围 [a-z]:任意一个小写字母 [A-Z]:任意一个大写字母 [wang] 匹配列表中的任何的一个字符 [^wang] 匹配列表中的所有字符以外的字符 [:digit:] 任意数字,相当于[0-9] [:lower:] 任意小写字母=[a-z] [:upper:] 任意大写字母=[A-Z] [:alpha:] 任意大小写字母[a-zA-Z] [:alnum:] 任意数字或字母[0-9a-zA-Z] [:space:] 水平或垂直空白字符 2. cp命令主要用于复制文件或目录。 语法 cp [options] source dest 可以复制、覆盖,都为单个文件 cp source.... dir dir必须存在,且为目录 cp -t dir source..... 目录放前需用-t选项,后面可以跟多个文件,适用于写脚本别名等。 cp /etc/issue . 其中.是当前目录 cp /etc/issue ./issuebak 复制并重命名为issuebak cp -r /boot /data 复制文件夹得+r选项 cp复制会使部分属性丢失 所以cp -a 可以备份文件,保留文件的全部属性

awk基础

匿名 (未验证) 提交于 2019-12-02 23:32:01
awk: 行处理器 awk '/pattern/{command}' file1 file2 .. print(输出 打印) printf(格式化输出) %c : 字符 %s : 字符串 %d : 整数 %f : float 浮点型 小数 %10s : 右对齐 10位宽度字符串 %-10s : 左对齐 Record : 记录 / 每一行 Field : 域 NR : record number : 行号 NF : field nunber : 字段的号 列号 FS : field separator : 分隔符 默认的分隔符是空格 " " ~ 匹配,与==相比不是精确比较 !~ 不匹配,不精确比较 == 等于,必须全部相等,精确比较 != 不等于,精确比较 &&  逻辑与 || 逻辑或 匹配时表示1个或1个以上 /[0-9][0-9]+/ 两个或两个以上数字 /[0-9][0-9]*/ 一个或一个以上数字 FILENAME 文件名 OFS 输出字段分隔符, 默认也是空格,可以改为制表符等 ORS 输出的记录分隔符,默认为换行符,即处理结果也是一行一行输出到屏幕 -F'[:#/]' 定义三个分隔符 -F : 指定分隔符 awk -F: '{print $0}' /etc/passwd //指定分隔符为:,打印整行 awk '{print $0}' awk.txt //打印整行 awk

Python中join函数和os.path.join

匿名 (未验证) 提交于 2019-12-02 22:56:40
Python中有join和os.path.join()两个函数,具体作用如下: join :连接字符串数组。将字符串、元组、列表中的元素以指定的字符 ( 分隔符 ) 连接生成一个新的字符串 os.path.join() : 将多个路径组合后返 回 函数说明: (1)join函数 语法: ‘sep’.join(seq) 参数说明: sep:分隔符,可以为空。seq:要连接的元素序列、字符串、元组、字典等 上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串 返回值: 返回一个以分隔符sep连接各个元素后生成的字符串 (2)os.path.join()函数 返回值:将多个路径组合后返回 注:第一个绝对路径之前的参数将被忽略 实例: # 对序列进行操作 seq1 = [ 'hello' , 'good' , 'boy' , 'doiido' ] print ( " " .join(seq1)) print ( ":" .join(seq1)) # hello good boy doiido # hello:good:boy:doiido # 对字符串进行操作 seq2 = "hello good boy doiido" print ( ":" .join(seq2)) # h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o #

Python字符串分割方法总结

匿名 (未验证) 提交于 2019-12-02 22:51:30
Python中字符串分割的常用方法是直接调用字符串的 str.split 方法,但是其只能指定一种分隔符,如果想指定多个分隔符拆分字符串需要用到 re.split 方法(正则表达式的split方法)。 str.split 字符串的split方法函数原型如下,其中sep为指定的分隔符,maxsplit为最大分割次数: 1 str.split(sep= None, maxsplit= -1) 默认情况下,不指定分隔符时则以空白字符(空格,回车,制表符等)作为分隔符拆分字符串: 1 2 3 4 >>> s = 'A B\tC\nD' >>> s.split() [ 'A', 'B', 'C', 'D'] >>> 在结果列表中,不会包含空字符串: 1 2 3 4 >>> s = ' A B\tC\nD\n\n' >>> s.split() [ 'A', 'B', 'C', 'D'] >>> 指定分隔符: 1 2 3 4 5 6 7 >>> s = 'www.google.com' >>> s.split( '.') [ 'www', 'google', 'com'] >>> s = 'AA||BB||CC||DD' >>> s.split( '||') [ 'AA', 'BB', 'CC', 'DD'] >>> 指定最大分割次数: 1 2 3 4 5 6 7 >>> s = 'www

Python中的join()函数的用法

匿名 (未验证) 提交于 2019-12-02 22:51:30
函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下: 一、函数说明 1、join()函数 参数说明 sep:分隔符。可以为空 seq:要连接的元素序列、字符串、元组、字典 上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串 返回值:返回一个以分隔符sep连接各个元素后生成的字符串 2、os.path.join()函数 返回值:将多个路径组合后返回 注:第一个绝对路径之前的参数将被忽略 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 #对序列进行操作(分别使用' '与':'作为分隔符) = [ 'hello' , 'good' , 'boy' , 'doiido' ] print ' ' .join(seq1) hello good boy doiido print ':' .join(seq1) hello:good:boy:doiido #对字符串进行操作 = "hello good boy doiido" print ':' .join(seq2) h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o #对元组进行操作 =