⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 457.html

📁 著名的linux英雄站点的文档打包
💻 HTML
📖 第 1 页 / 共 2 页
字号:
mv $Ucase $Lcase<br>
done<br>
<br>
请大家完善并补充 <br>
<br>
for file in `ls`<br>
do<br>
       mv $file `echo $file|tr "[A-Z]" "[a-z]"`<br>
done<br>
<br>
用awk也行 :)<br>
#!/bin/sh<br>
for I in `ls` ;<br>
do<br>
C=$(echo $I|awk '{print toupper($I)}')<br>
mv $I $C<br>
done<br>
<br>
for i in *<br>
do<br>
a=`echo $i |tr '[a-z]' '[A-Z]'`<br>
cp $i $a<br>
echo $a<br>
rm -i $a<br>
done<br>
<br>
<br>
<br>
我的当前目录及其n级深度的子目录都是大写,我想改成小写。我用find . -exec file.sh {} ; 怎么每次都只能改一级的深度?非得用for 和cd/cd..才可以完成吗?<br>
<br>
<br>
<br>
find . -exec ...这样的命令肯定是递归搜索了(即深入n层目录)了,大半是你的file.sh有问题,无法处理带有目录的文件名,如:./a/file.txt文件在你的的脚本处理下,被处理成:mv ./a/file.txt ./A/FILE.TXT,  ./A目录不存在当然mv不成功了。<br>
<br>
应该是在file.sh上出的问题,我是这么简单的做的:<br>
#!/bin/sh<br>
new=`echo $1|tr "[a-z]" "[A-Z]"`<br>
mv $1 $new<br>
<br>
这样的shell是基于find对深层目录处理时候是先从最深层处理的,现在看来find是从当前开始处理再至最深层的。<br>
那这样大小写转换的shell又该怎样写呢? <br>
<br>
<br>
拆分后再转换<br>
#!/bin/sh<br>
dn=`dirname $1`<br>
fn=`basename $1`<br>
newfn=`echo $fn|tr "[a-z]" "[A-Z]"`<br>
mv $1 $dn/$newfn<br>
<br>
测试没通过。<br>
<br>
n=`dirname $1`<br>
newdn=`echo $dn|tr "[a-z]" "[A-Z]"`<br>
fn=`basename $1`<br>
newfn=`echo $fn|tr "[a-z]" "[A-Z]"`<br>
f1=$newdn/$fn<br>
f2=$newdn/$newfn<br>
<br>
if [ $f1 != $f2 ]<br>
then<br>
echo "$f1 $f2"<br>
mv $f1 $f2<br>
fi<br>
<br>
这个可以了。不过执行的时候这sh不能在被转化的目录中。<br>
应该这样:find . -exec ../mysh.sh {} ;<br>
<br>
<br>
<br>
<br>
<br>
下面引用由samhoo在 2002/10/24 03:33pm 发表的内容:<br>
dn=`dirname $1`<br>
newdn=`echo $dn|tr "" ""`<br>
fn=`basename $1`<br>
newfn=`echo $fn|tr "" ""`<br>
...<br>
<br>
<br>
<br>
呵呵,这个肯定也不行,不知道有没有人测试过?!<br>
原因是:你改过了目录的名字,所以$f1的目录$newdn是不存在的;还有如果有空目录出现,程序也是处理不了的。<br>
只有每次处理都重新读一次目录才可以,信乎?!<br>
<br>
俺测了,干活啊<br>
<br>
就是要把脚本放在所检验目录子外 <br>
<br>
<br>
<br>
<br>
下面引用由smileniu在 2002/12/17 02:51pm 发表的内容:<br>
呵呵,这个肯定也不行,不知道有没有人测试过?!<br>
原因是:你改过了目录的名字,所以$f1的目录$newdn是不存在的;还有如果有空目录出现,程序也是处理不了的。<br>
只有每次处理都重新读一次目录才可以,信乎?!<br>
<br>
<br>
<br>
<br>
分析的很对!一旦发生路径名改动,后面的都用不成了~~~<br>
<br>
可以改成这样就行了,<br>
<br>
代码:<br>
<br>
 <br>
FILES=`find $1 | sort -r` <br>
 <br>
for i in $FILES; do <br>
    DIR=`dirname $i` <br>
    BAS=`basename $i | tr '[a-z]' '[A-Z]'` <br>
    bas=`echo $BAS | tr '[A-Z]' '[a-z]'`  <br>
 <br>
    mv $DIR/$BAS $DIR/$bas   <br>
done  <br>
<br>
<br>
<br>
(不知为什么,后半部分居然没贴上,超出本页最大长度啦?)<br>
<br>
如果适当扩展一下,改成可以带参数,大写变小写,或者小写变大写,完整的如下<br>
<br>
代码:<br>
<br>
 <br>
#!/bin/sh <br>
 <br>
############################################################ <br>
#  this script will change file name recursively with option <br>
#   -u:  locase to upcase <br>
#   -l:  upcase to locase  <br>
############################################################ <br>
 <br>
hint () { <br>
    echo "    Usage: $0 [-l|-u]  DIR1 [DIR2 DIR3...] <br>
              -l  to lowcase  <br>
              -u  to upcase" <br>
    exit 1 <br>
} <br>
 <br>
if test $# -lt 2; then <br>
    echo "Too few arguments." <br>
    hint <br>
fi <br>
 <br>
while [ "$1" ]; do <br>
    case $1 in  <br>
       -l)  ACTION="lo" <br>
            shift 1 <br>
            ;; <br>
       -u)  ACTION="up" <br>
            shift 1 <br>
            ;;              <br>
        *)  if test -d $1; then <br>
                DIR="$DIR $1"  <br>
            else <br>
                echo "no such directory --- $1" <br>
                hint <br>
            fi <br>
            shift <br>
            ;; <br>
    esac <br>
done <br>
 <br>
# echo $ACTION <br>
# echo $DIR <br>
 <br>
 <br>
FOUND=`find $DIR | sort -r` <br>
 <br>
for i in $FOUND; do <br>
    DN=`dirname $i` <br>
    BS=`basename $i`  <br>
    loBS=`echo $BS | tr '[A-Z]' '[a-z]'` <br>
    upBS=`echo $BS | tr '[a-z]' '[A-Z]'`  <br>
 <br>
    NAME1=$DN/$BS <br>
 <br>
    if [ "$ACTION" = "lo" ]; then  <br>
        NAME2=$DN/$loBS <br>
    elif [ "$ACTION" = "up" ]; then  <br>
        NAME2=$DN/$upBS <br>
    fi <br>
         <br>
    if [ "$NAME1" = "$NAME2" ]; then  <br>
        echo "****: $NAME1 ---x--- $NAME2  identical!"   <br>
    else  <br>
        echo "- renaming $NAME1 --&gt; $NAME2"   <br>
        mv $NAME1 $NAME2   <br>
    fi <br>
done <br>
<br>
是啊~<br>
<br>
其实仔细看了一下楼上的帖子,发现问题的所在就是 find 得到结果并不能直接拿来处理,因为它是自上而下的,而目录一旦改名,子目录就全抓瞎了。而经过排序后(先处理最深的目录,由里向外)就能用了。<br>
<br>
然后稍作修改,并加上一些参数,使之有一定的实用性。<br>
</FONT><br>
                                      </TD>
                                    </TR>
                                <TR>
                                <TD colSpan=2><FONT 
                                class=middlefont></FONT><BR>
                                        <FONT 
                                class=normalfont>全文结束</FONT> </TD>
                                    </TR>
                                <TR>
                                <TD background="images/dot.gif" tppabs="http://www.linuxhero.com/docs/images/dot.gif" colSpan=2 
                                height=10></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></DIV></TD>
                        <TD vAlign=top width="20%" 
                      background="images/line.gif" tppabs="http://www.linuxhero.com/docs/images/line.gif" rowSpan=2> 
                          <DIV align=center> 
                            <table class=tableoutline cellspacing=1 cellpadding=4 
                        width="100%" align=center border=0>
                              <tr class=firstalt> 
                                <td noWrap background="images/bgline.gif" tppabs="http://www.linuxhero.com/docs/images/bgline.gif" colspan=2 height=21>
                                <font class=normalfont><b>所有分类</b></font></td>
                              </tr>
<tr class=secondalt> <td noWrap width=27%> <font class=normalfont>1:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type1.html" tppabs="http://www.linuxhero.com/docs/type1.html">非技术类</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>2:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type2.html" tppabs="http://www.linuxhero.com/docs/type2.html">基础知识</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>3:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type3.html" tppabs="http://www.linuxhero.com/docs/type3.html">指令大全</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>4:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type4.html" tppabs="http://www.linuxhero.com/docs/type4.html">shell</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>5:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type5.html" tppabs="http://www.linuxhero.com/docs/type5.html">安装启动</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>6:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type6.html" tppabs="http://www.linuxhero.com/docs/type6.html">xwindow</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>7:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type7.html" tppabs="http://www.linuxhero.com/docs/type7.html">kde</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>8:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type8.html" tppabs="http://www.linuxhero.com/docs/type8.html">gnome</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>9:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type9.html" tppabs="http://www.linuxhero.com/docs/type9.html">输入法类</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>10:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type10.html" tppabs="http://www.linuxhero.com/docs/type10.html">美化汉化</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>11:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type11.html" tppabs="http://www.linuxhero.com/docs/type11.html">网络配置</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>12:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type12.html" tppabs="http://www.linuxhero.com/docs/type12.html">存储备份</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>13:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type13.html" tppabs="http://www.linuxhero.com/docs/type13.html">杂项工具</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>14:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type14.html" tppabs="http://www.linuxhero.com/docs/type14.html">编程技术</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>15:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type15.html" tppabs="http://www.linuxhero.com/docs/type15.html">网络安全</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>16:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type16.html" tppabs="http://www.linuxhero.com/docs/type16.html">内核技术</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>17:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type17.html" tppabs="http://www.linuxhero.com/docs/type17.html">速度优化</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>18:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type18.html" tppabs="http://www.linuxhero.com/docs/type18.html">apache</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>19:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type19.html" tppabs="http://www.linuxhero.com/docs/type19.html">email</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>20:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type20.html" tppabs="http://www.linuxhero.com/docs/type20.html">ftp服务</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>21:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type21.html" tppabs="http://www.linuxhero.com/docs/type21.html">cvs服务</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>22:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type22.html" tppabs="http://www.linuxhero.com/docs/type22.html">代理服务</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>23:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type23.html" tppabs="http://www.linuxhero.com/docs/type23.html">samba</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>24:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type24.html" tppabs="http://www.linuxhero.com/docs/type24.html">域名服务</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>25:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type25.html" tppabs="http://www.linuxhero.com/docs/type25.html">网络过滤</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>26:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type26.html" tppabs="http://www.linuxhero.com/docs/type26.html">其他服务</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>27:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type27.html" tppabs="http://www.linuxhero.com/docs/type27.html">nfs</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>28:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type28.html" tppabs="http://www.linuxhero.com/docs/type28.html">oracle</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>29:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type29.html" tppabs="http://www.linuxhero.com/docs/type29.html">dhcp</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>30:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type30.html" tppabs="http://www.linuxhero.com/docs/type30.html">mysql</a></font></td>    </tr>  </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>31:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type31.html" tppabs="http://www.linuxhero.com/docs/type31.html">php</a></font></td>    </tr>  </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>32:</font> </td><td noWrap width=73%>   <table width=100% border=0>    <tr>       <td><font class=normalfont><a href="type32.html" tppabs="http://www.linuxhero.com/docs/type32.html">ldap</a></font></td>    </tr>  </table></td></tr>                            </table>
                          </DIV></TD></TR>
                    <TR vAlign=top>
                        <TD width="80%"> 
                          <DIV align=center><BR>
                          </DIV>
                        </TD></TR></TBODY></TABLE></TD></TR>
                </TABLE></TD></TR>
          </TABLE>
      <TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#eeeeee 
        border=0><TBODY>
        <TR>
          <TD width="50%">
              <P><FONT class=middlefont>版权所有 &copy; 2004 <A 
            href="mailto:bjchenxu@sina.com">linux知识宝库</A><BR>
                违者必究. </FONT></P>
            </TD>
          <TD width="50%">
              <DIV align=right><FONT class=middlefont>Powered by: <A 
            href="mailto:bjchenxu@sina.com">Linux知识宝库</A> Version 0.9.0 </FONT></DIV>
            </TD></TR></TBODY></TABLE>
      <CENTER></CENTER></TD></TR>
    </TABLE></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -