Linux 文件名匹配】的更多相关文章

1.文件名匹配 例:rm *.bak;   删除结尾是.bak的文件 rm *4*.bak; 删除名称中有“4”的.bak文件 ls *.????; 查找结尾是“.”后有四个字母的文件 2.管道 先进先出,管道符号由“|”来标识 例:ls /etc|more 3.重定向文件 1)输出重定向: 语法命令:command > file    例:ls /boot > /root/abc 2)输入重定向: 语法命令:command < file    例:cat < /root/mm 3…
背景:在linux使用过程中,经常需要查找文件,对命令中的通配符pattern和正则表达式的区分不是很清楚.有必要好好研究一下. 1 扫盲 1.1 通配符和正则表达式 当在使用命令行时,有很多时间都用来查找你所需要的文件,如ls find等. S h e l l提供了一套完整的字符串模式匹配规则,或者称之为元字符,当s h e l l遇到上述字符时,就会把它们当作特殊字符,而不是文件名中的普通字符,这样用户就可以用它们来匹配相应的文件名,我理解这可以称为通配符. 通配符与正则表达式是有区别的,简…
As the shell reads each line, it "handles" any special characters. This includes variable evaluation (variables start with a "$)," and filename expansion. Expansion of filenames occurs when the characters "*," "?,"…
*   匹配文件名中的任何字符串,包括空字符串. ? 匹配文件名中的任何单个字符. [...]   匹配[ ]中所包含的任何字符. [!...]   匹配[ ]中非感叹号!之后的字符. 如: s*          s开头的所有字符串 *s         s结尾的所有字符串 *s?        以s为倒数第二个字符的字符串 [0-9]    所有以数字的字符 [a,b]         a或者b [!0-9]        不是数字的字符 ls /user/[!a-n]*.sh :列出/us…
说明:来自老阮的<为什么文件名要小写>的文章,其实我觉得应该说是<Linux文件名为什么要小写>会更合适些. 一.可移植性 Linux 系统是大小写敏感的,而 Windows 系统和 Mac 系统正好相反,大小写不敏感.一般来说,这不是大问题. 但是,如果两个文件名只有大小写不同,其他都相同,跨平台就会出问题. foobar Foobar FOOBAR fOObAr 上面四个文件名,Windows 系统会把它们都当作foobar.如果它们同时存在,你可能没办法打开后面三个文件. 另…
转自:http://www.linuxsa.cn/when-linux-file-name-topsy-turvy-deleted-or-renamed.html linux文件名乱码时删除或改名的方式 当......一堆......文件出现乱码时,你想用脚本把他们改名,结果又发现字符处理工具awk等都对这些玩意没有办法,无比蛋疼啊,怎么办泥,我有办法: 1.ls -i 查找到这些乱码文件的inode号,比如说2258820 2.find . -inum 2258820 -exec mv {}…
1.enconv文件名编码转换,比如要将一个GBK编码的文件转换成UTF-8编码,操作如下 enconv -L zh_CN -x UTF-8 filename enconv -L GB2312 -x UTF-8 test.txt 2.convmv文件名编码转换: 从Linux往windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,…
1.linux解压压缩文件乱码 unzip -O CP936 xxx.zip 2.一般文件用convmv sudo convmv -f gbk -t utf-8 -r --notest /your_directory 就是将/your_directory目录下原来文件名是gbk编码方式的全部改为utf-8格式的.这里 -f 后面为原来的编码方式,-t 后面是要更改为的编码方式, -r 表示这个目录下面的所有文件, –notest 表示马上执行,而不是仅仅测试而已.另外权限不同,可能要root才能…
转载请注明出处:https://www.cnblogs.com/wenjunwei/p/9860994.html 需求 注:此正则只用于规范linux路径格式. linux路径支持很多的特殊字符,但是我们应该养成一个好的习惯:只用字母.数字.下划线的组合命名目录或文件. 如何使用正则表达式校验一个linux路径符合我们的格式要求呢? 格式要求: 必须'/'开头 字符串只允许字母.数字.下划线 正确格式如下 /data/ /home/conf123 /data/nginx_conf/ 错误格式如下…
linux系统中,利用grep打印匹配的上下几行   如果在只是想匹配模式的上下几行,grep可以实现.   $grep -5 'parttern' inputfile //打印匹配行的前后5行   $grep -C 5 'parttern' inputfile //打印匹配行的前后5行   $grep -A 5 'parttern' inputfile //打印匹配行的后5行   $grep -B 5 'parttern' inputfile //打印匹配行的前5行 //搜索inputfile…
1) . : 匹配任意单ASCII 字符,可以为字母,或为数字. 2) 举例: ..XC..匹配deXC1t.23XCdf 等,.w..w..w.匹配rwxrw-rw- 行首以^匹配字符串或字符序列 1) ^ : 允许在一行的开始匹配字符或单词. 2) 举例: ^.01 匹配0011cx4.c01sdf 等,^d 匹配drwxr-xr-x.drw-r--r--等 行尾以$匹配字符串或字符 1) $ : 在行尾匹配字符串或字符,$符号放在匹配单词后. 2) 举例: trouble$ 匹配以单词tr…
待匹配文件:#FY3D_IPMNT_GBAL_L1_20180516_0003_030KM_MS.HDF 干扰文件:#FY3D_IPMNT_GBAL_L1_20180516_0003_030KM_MS_uuu.HDF 1.正则表达式import reif re.findall('FY3D_IPMNT_GBAL_L1_\d+_\d+_030KM_MS.HDF',fileEvery): fileList.append(os.path.join(inputDir, fileEvery)); 2.只匹配…
注意:在Linux下全部文件和文件夹命名都是小写的! Linux系统区分英文字符的大小写.命名目录和命名文件的规则是相同的.除非有特别的原因,否则用户创建的文件和目录名要使用小写字符.大多数的Linux命令也使用小写字符. Linux系统下的文件名长度最多可到256个字符.通常情况下,文件名的字符包括:字母.数字."."(点)."_"(下划线)和"-"(连字符).Linux允许在文件名中使用除上述符号之外的其它符号,但并不建议用户这样做.有些转意…
shell常见通配符: 字符 含义 实例 * 匹配 0 或多个字符 a*b  a与b之间可以有任意长度的任意字符, 也可以一个也没有, 如aabcb, axyzb, a012b, ab. ? 匹配任意一个字符 a?b  a与b之间必须也只能有一个字符, 可以是任意字符, 如aab, abb, acb, a0b. [list]  匹配 list 中的任意单一字符 a[xyz]b   a与b之间必须也只能有一个字符, 但只能是 x 或 y 或 z, 如: axb, ayb, azb. [!list]…
问题描述:公司的FTP服务器早就搭建好,windows客户端可以上传文件到FTP服务器,但是上传去的文件在LINUX目录下文件是乱码. 解决方法:首先编辑/etc/sysconfig/i18n这个文件, 不管你装的是中文版,还是英文版.删掉原来的配置,把下面的拷贝过去   LANG="zh_CN.GB18030" SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" SYSFONT="latarcy…
最近被问到 一个关于查找匹配字符的信息显示问题: 系统/etc/sysctl.conf文件会定义系统内核的一些配置,请查找和net有关的信息,并只打印前面5行信息. 解决方式大概试两种写法均可: 1. cat /etc/sysctl.conf|grep -w 'net' |head -n 5 2. grep -w 'net' /etc/sysctl.conf |head -n 5…
1.假设IP地址是规范的,没有出错误的 sed -n "/[0-9]\{1,3\}.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/p" test 这种匹配存在明显的问题,在正则匹配的过程中,若是出现300,1,255,0:192.168.0.  :192.168,1.1.1这种错误的IP地址,任然会被匹配到 2.IP地址规范与否未知的情况下匹配 在这里,逛论坛的时候看见一位老哥踩了一个坑,这里做 一下记录 sed -n -r "/((([0…
文件和文件夹的名称中有特殊字符,操作有两种方式( - 在文件名称最前面除外). 例如:文件名为 a&b.c 1.通过转移符 "\" $ touch   a\&b.c $ cp   a\&b.c   de.c $ rm   a\&b.c 2.通过双引号括起来 $ touch   "a&b.c" $ cp   "a&b.c"   de.c $ rm   "a&b.c" 名称的…
在Linux中,文件的颜色都是有含义的.其中, 蓝色表示目录 绿色表示可执行文件 红色表示压缩文件 浅蓝色表示链接文件 灰色表示其它文件 红色闪烁表示链接的文件有问题了 黄色是设备文件,包括block, char, fifo. 用“dircolors -p”命令可以看到缺省的颜色设置,包括各种颜色和“粗体”,下划线,闪烁等的定义,当然,你还可以在环境变量“$LS_COLORS”上进行修改.…
需求 有需要移动的文件名清单 filename.txt filename.txt 内容如下: 15542842 1582457 1282427 1532158 4542457 1582453 6552452 2.文件在files1文件夹下有filename.txt中的文件并以csv,txt,doc结尾 类似 15542842.txt 15542842.csv 15542842.doc 3.从files1文件夹移动到files2 实现方式 法一: #!/bin/bash for I in `cat…
1.通过ls -i命令获得文件的节点号 2.通过节点号删除 find -inum 节点号 -delete 这样就可以删除文件名乱码的文件…
学艺不精,一开始用了 “grep -ne '46.5743' file.txt” 提取含有46.5743的小数不成功,后面查资料才知道正则表达式中,小数点代表的是:一定有一个任意字节. 正确的写法应该是: grep -ne '46\.5743' file.txt…
最近搞了台Macbook Pro,就学习了一下Linux命令,在网上查了些资料,看了本书叫<快乐的 Linux 命令行>,里面涉及到了各个方面的命令. 在此将常用的整理出来,以备将来使用. 一.文件系统中跳转 1)pwd 打印出当前工作目录名. 2)ls 列出一个目录包含的文件及子目录. ls 命令有大量的选项: 3)cd 更改当前目录. 绝对路径开始于根目录,紧跟着目录树的一个个分支,一直到达所期望的目录或文件. 绝对路径从根目录开始,直到它的目的地,而相对路径开始于工作目录. 二.操作文件…
  1.ls 文件属性:  -:普通文件  d:目录文件  b:块设备  c:字符设备文件  l:符号连接文件  p:命令管道  s:套接字文件  文件权限: 9位数字,每3位一组  文件硬链接次数  文件所属主(owner)  文件的属组(group)  文件大小(size),单位默认是字节  ls常用选项: -l:显示文件属性,ls -l=ll  -h:做相应的单位转换显示  -a:显示所有文件  -A:显示.和..以为的所有文件  -d:显示目录自身属性  -i:显示文件的缩影接点号码(i…
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd5360cba1adb7d 目录 Linux学习笔记... 1 请切换web视图查看,表格比较大,方法:视图>>web板式视图... 1 1.      常用命令... 3 1.1文件处理命令... 3 1.2权限管理命令... 8 1.3文件搜索命令... 12 1.4帮助命令... 19 1.5压…
原文转自 http://www.cnblogs.com/wanqieddy/archive/2011/07/15/2107071.html 1.grep grep(General Regular Expression Parser,通用规则表达式分析程序)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 它的使用语法为: grep [选项] pattern [文件名] . 匹配任意一个字符* 匹配0 个或多个*前的字符^ 匹配行开头$ 匹配行结尾[] 匹配[ ]中的任…
find 查找目录 -name "文件名"find / -name "php.ini"locate 文件名locate php.ini 一:locate命令 locate命令用于查找文件,它比find命令的搜索速度快,它需要一个数据库,这个数据库由每天的例行工作(crontab)程序来建立.当我们建立好这个数据库后,就可以方便地来搜寻所需文件了. 即先运行:updatedb(无论在那个目录中均可,可以放在crontab中 )后在   /var/lib/slocate…
linux之find命令详解 查找文件find ./ -type f查找目录find ./ -type d查找名字为test的文件或目录find ./ -name test查找名字符合正则表达式的文件,注意前面的'.*'(查找到的文件带有目录)find ./ -regex .*so.*\.gz查找目录并列出目录下的文件(为找到的每一个目录单独执行ls命令,没有选项-print时文件列表前一行不会显示目录名称)find ./ -type d -print -exec ls {} \;查找目录并列出…
一.填空题: 1. 在Linux系统中,以 文件 方式访问设备 . 2. Linux内核引导时,从文件 /etc/fstab 中读取uu要加载的文件系统. 3. Linux文件系统中每个文件用 i节点 来标识. 4. 全部磁盘块由四个部分组成,分别为引导块 .专用块 . i节点表块 和数据存储块. 5. 链接分为: 硬链接 和 符号链接 . 6. 超级块包含了i节点表 和 空闲块表 等重要的文件系统信息. 7. 某文件的权限为:d-rw-_r--_r--,用数值形式表示该权限,则该八进制数为:…
转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统.3. Linux文件系统中每个文件用 i节点 来标识.4. 全部磁盘块由四个部分组成,分别为引导块 .专用块 . i节点表块 和数据存储块.5. 链接分为: 硬链接 和 符号链接 .6. 超级块包含了i节点表 和 空闲块表 等重要的文件系统信息.7. 某文件的权限为:d-rw-_r--_r…