bash文件名统配】的更多相关文章

bash基础特性之globbing,即文件名通配:     文件名通配:使用元字符匹配字符         *:匹配任意长度的任意字符             假如文件名为paaaa,则pa*,*pa*,*pa,p*a,*p*a                     ?: 匹配任意单个字符                 []: 匹配指定集合内的任意单个字符,必须是集合内的一个字符.             [0-9]: 任意数字             [a-z]: 任意小写字母      …
参考链接: http://www.jb51.net/article/51592.htm 查找文件不获取路径: find $1 -name '*.bin' -exec basename {} \;…
我们知道Linux系统有两种操作方式,一种为GUI的图形界面化管理方式,其中图形程序常见的有Gnome.KDE.xfce:另一种管理方式就是就是GLI的命令行管理方式,而命令行的管理方式就是通过shell程序来进行管理,而shell程序则分为多种,我们这节就来详细介绍shell程序: bash程序及其特性 shell程序在Linux系统下的分类:通过cat /etc/shells查看系统所支持的shell程序: CLI命令行管理下,我们包含sh.bash(Linux系统的默认shell程序,和s…
1 系统所支持的shell存放于 /etc/shells 文件中,shell脚本的开头 #!/bing/bash 是指定使用的脚本类型 不能省略,省略之后有些文件可以执行,但容易出错 这行不是注释 2 执行shell脚本的方法: 方法1:赋予权限755 直接写文件名 即可执行 方法2:bash 文件名 3 echo命令 echo [选项] 输出内容 作用:输出信息 输出内容中有空格时必须用引号引起来,没有空格时可以不用引号,当有感叹号时只能用单引号'' 加 -e 支持 \ 控制的字符 即转义字符…
Bash参考手册 目录 1简介 1.1什么是Bash? 1.2什么是shell? 2定义 3基本外壳功能 3.1 Shell语法 3.1.1外壳操作 3.1.2报价 3.1.2.1逃逸角色 3.1.2.2单引号 3.1.2.3双引号 3.1.2.4 ANSI-C引用 3.1.2.5特定于语言环境的翻译 3.1.3评论 3.2 Shell命令 3.2.1简单命令 3.2.2管道 3.2.3命令列表 3.2.4复合命令 3.2.4.1循环结构 3.2.4.2条件结构 3.2.4.3分组命令 3.2.…
1:Shell编程的本质 Shell的意思是“壳程序”,它是一个视窗,供我们交互. 系统中有许多负责不同功能的可执行文件,他们被添加到PATH变量后,我们就可以在Shell中通过命令行调用.这些这些可执行程序,并且在调用时传递参数给他们让他们输出处理后的结果. 因此,Shell可以说是一层包装在众多可执行程序上的“壳”,透过它,我们可以调用其他不同功能的可执行程序. 2:Bash下快捷键 3:Bash下字符含义 4:从文件中提取包含关键字的行 grep '关键字' 文件名 5:统计文件行树.字数…
周期性任务丶find 文件查找:find命令 locate :在数据库中查找,非实时查找,精确度不高,查找速度快,模糊查找  /tmp/passwad/a.textfind:实时查找:速度慢  ,精确匹配 find [option] [查找路径][查找标准][执行动作](默认为显示)查找路径:默认为当前路径查找标准:默认为指定路径下的所有文件 查找标准:                       -name “文件名称”:根据文件名查找 支持使用globbing(文件名统配符)        …
1.bash以及特性 shell:外壳 GUI:KDE,Gnome,Xfce CLI:sh,csh,ksh,bash(born again shell) 进程:在每个进程看来,当前主机上只存在内核和当前进程 进程是程序的副本,是程序执行的实例 pstree display a tree of processes shell 子shell 特性: 1.命令历史 history -c clear the history list by deleting all of the entries -d o…
系统分区: MBR分区(主分区不超过4个,单个分区不超过2TB) fdisk -l fdisk /dev/sdb n(添加一个分区)p(添加一个主分区,主分区)e(添加一个扩展分区)l(添加一个逻辑分区,从5开始)d(删除一个分区)w(保存分区) GPT分区(yum install parted) parted select /dev/sdb mklable msdos(gpt) print (all) mkpart Partition name? []? File system type? […
方法如下所示:(1) 使用选项–x,启用shell脚本的跟踪调试功能: $ bash -x script.sh 运行带有-x标志的脚本可以打印出所执行的每一行命令以及当前状态.注意,你也可以使用sh -x script. (2) 使用set -x和set +x对脚本进行部分调试.例如: #!/bin/bash #文件名: debug.sh for i in {1..6}; do set -x echo $i set +x done echo "Script executed" 在上面的…
别名 使用alias 创建 alias new_command='command sequence' 保存 echo 'alias cmd="command seq"' >> ~/.bashrc 删除 //~/.bashrc中删除 //使用 unalias cmd //设置为空 alias cmd= 对别名进行转义 \command 字符\对命令实施转义,使可以执行原本的命令,而不是这些命令的别名替身; 在不可信环境下执行特权命令,通过在命令前加上\来忽略可能存在的别名设置…
监视磁盘的使用情况 $ du file1.txt file2.txt $ du -a file_or_dir #-a递归输出指定目录的所有文件统计 $ du file_or_dir #这只是显示子目录使用的情况不显示每个文件占用空间情况$ du -h filename #-h 显示的更方便人阅读$ du -c file1 file2 #-c 最后有一个统计$ du -s FILES(s) #-s 只输出合计数据$ du -b FILE(s) #以特定的单位输出文件大小 -b(字节) -k(KB)…
apt-get install subversion apt-get install make atp-get install gcc sudo vim /etc/profile export PATH= /pub/tools/package/toolchain/mips-2012.07/bin:/pub/tools/package/toolchain/mips-2014.05/bin:$PATHexport LD_LIBRARY_PATH=/opt/rda/mips-2012.07/lib:/…
printf使用文本或者由空格分隔的参数,我们可以在printf中使用格式化字符串.printf不会写像echo那样自动添加换行符,必须手动添加 ========================================= 代码区域 ========================================= #!/bin/bash #文件名:printf.sh printf "%-5s %-10s %-4s\n" no Name Mark printf "%-5…
shell学习总结之自定义函数 Myfun (){ echo -n "now i is $i " ! [ "$i" ] && exit ; echo jj return ' } myf=$(Myfun); echo myf Myfun unset Myfun Myfun echo 'the end !'$myf 别人的 #! bin/bash # ----------------------------------------------------…
--------- shell用if出错了,Why? shell if 实例: site=github.com/fankcoder if [ $site == github.com/fankcoder] then echo "fankcoder" else if [ $site == github.com/fankcoder ] then echo "get" fi fi 执行时总是提示: unexpected operator GG了才知道原来Ubuntu默认的s…
SED   1.sed是流编辑器(stream editor)缩写,作用主要是文本替换 命令格式:sed ‘s/pattern/replace_string/' file或者cat file | sed 's/pattern/replace_string/'   2.默认情况下sed只会打印替换后的文本,如果需要在替换的同时保存更改,可以使用-i选项,可以将替换结果应用于源文件,很多用户在进行替换后会使用重定向来保存文件: sed  ‘s/pattern/replace_string/' fil…
OpenCC OpenCC 是跨平台.多语言的开放中文转换库,除了基本的简繁转换功能外,用户还可以选择对不同用词习惯和异体字的处理方式. OpenCC 还提供方便的网页转换界面. OpenOffice.Org的转换功能 OpenOffice.Org提供简繁功能,使用很方便(在工具->语言->中文简繁转换). Google翻译功能 Google翻译也可以做简繁转换,效果分析见后面. 使用cconv转换 cconv建立在iconv之上,增加了词语转换能力,效果分析见后面. Ubuntu用户可以用命…
#!/bin/bash #!文件名为countfile.sh ]; then echo "Usage is $0 basepath"; exit fi path=$ declare -A statarray; while read line; do ftype=`file -b "$line" | cut -d, -f1` let statarray["$ftype"]++; done< <(find $path -type f -p…
<私房菜>上的shell脚本问题: 转载:[: 11: y: unexpected operator问题 脚本如下:% #!/bin/bash # Program: # This program shows the user's choice # History: #// PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin& export PATH read -p "Please in…
$0就是该bash文件名 $?显示最后命令的退出状态.0表示没有错误,其他任何值表明有错误. $*所有位置参数的内容:就是调用调用本bash shell的参数. $@基本上与上面相同.只不过是 "$*"返回的是一个字符串,字符串中存在多外空格. "$@"返回多个字符串. 还有$#返回所有位置参数的个数. $$执行当前sh文件的pid # touch variable # vi variable   脚本内容如下:   #!/bin/sh echo "num…
===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 FFmpeg源代码结构图 - 编码 [通用] FFmpeg 源代码简单分析:av_register_all() FFmpeg 源代码简单分析:avcodec_register_all() FFmpeg 源代码简单分析:内存的分配和释放(av_malloc().av_free()等) FFmpeg 源代…
xargs xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具. xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据. xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行. xargs 默认的命令是 echo,这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代. xargs 能够捕获一个命令的输出,然后传递给另外一个命令. 之所以能用到这个…
bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 注:本文关于引号等特殊符号的处理仅仅只是几个例子,想要彻底搞明白shell对特殊符号的解析,见另一篇文章shell解析命令行的过程. 1.2.1 echo引号和感叹号问题 关于echo的用法,注意点就是单引号和双引号的特殊情况. 另外,在bash环境下,感叹号只能通过单引号包围来输出,因为此时感叹号表示引用历史命令,除非设置"set +H"关闭历史命…
创建一个shell文件 1. 创建一个.sh文件 2. 文件第一行声明shell编译器路径  #!/bin/bash 3. 修改文件权限 chmod 777 文件名    或  /bin/bash  文件名 4. 执行   ./文件名 创建一个shell文件 编写一个进入目录的shell脚本 需要这样执行 .  ./1.sh      或       source  ./1.sh…
1.egrep是grep命令的扩展.grep使用需要脱义字符“\”.-E也可以满足. 2.正则参数. (). #任意一个任意字符. ()? #0或1个前面的字符. ()+ #1或多次的前面字符. ().* #任意个任意字符. ()* #0或多个任意字符. 3.egrep语句: ()egrep ‘root|bash’文件名 #查找root,或者bash. ()egrep ‘r(o){}’文件名 #查找r后面2次o的参数.如(roo). ()egrep –q #不打印输出,如果匹配反馈$?.…
1:Linux下,在/usr/share/dict下包含了词典文件,检查一个单词是否在词典里: #!/bin/bash #文件名:checkout.sh #检查给定的单词是否为词典中的单词 word=$; grep "^$1$" /usr/share/dict/words -q ];then echo "word is a dictionary word" else echo "word is not a dictionary word" fi…
shell的函数和Javacript和php的函数声明一样,只不过shell在调用函数的时候,只需要写函数名就可以调用函数,注意不要在函数名后面加括号 创建并使用函数 #!/bin/bash #文件名:test.sh function test(){ echo "aaaaaaa" } #直接使用函数名就可以调用函数 test test 运行: ubuntu@ubuntu:~$ ./test.sh aaaaaaa aaaaaaa ubuntu@ubuntu:~$ 函数传参.局部变量 给函…
参数左移什么意思呢?这个参数指的是在运行脚本时,跟在脚本名后面的参数,前面已经讲过,可以使用$#来获取参数的个数,使用$*来获取所有的参数,而参数左移的含义是这样的:有个指针指向参数列表第一个参数,左移的意思就是每读一个参数,指针就指向第二个参数,就好像参数向左移动了,于是乎,这样就可以读取每个参数的值了,在循环结构中特别常用. 下面一个例子: #!/bin/bash #文件名:test.sh tot=0 while [ $# -gt 0 ] do echo "参数为"$1 #注意这里…
shell中的continue和break和其他语言中的使用方法一模一样:continue用于跳过本次循环,break用于中断本层的循环 下面是使用例子: #!/bin/bash #文件名:test.sh for i in 1 2 3 4 5 6 7 8 9 do if [ $i -eq 4 ];then continue else echo $i fi if [ $i -eq 6 ];then break fi done 运行: ubuntu@ubuntu:~$ ./test.sh 1 2 3…