ファイル名と拡張子の一括変更

3668 ワード

1.      
${var}	          var  ,  $var  
 	 
${var-DEFAULT}	  var     ,     $DEFAULT     *
${var:-DEFAULT}	  var     ,       ,     $DEFAULT     *
 	 
${var=DEFAULT}	  var     ,     $DEFAULT     *
${var:=DEFAULT}	  var     ,       ,     $DEFAULT     *
 	 
${var+OTHER}	  var   ,       $OTHER,     null   
${var:+OTHER}	  var    ,       $OTHER,     null   
 	 
${var?ERR_MSG}	  var    ,      $ERR_MSG *
${var:?ERR_MSG}	  var    ,      $ERR_MSG *
 	 
${!varprefix*}	       varprefix         
${!varprefix@}	       varprefix         

#!/bin/bash
#
#

#  path  
path = /data/back/
#  path     tar.gz      
find $path -name "*.tar.gz" -type f |xagrs rm -f

#    
find ${path:=/data/back/} -name "*.tar.gz" -type f |xagrs rm -f
#   path         ,       ,      =     
#           

2.      
${#string}	                        $string    	 
${string:position}	                 $string ,    $position      
${string:position:length}	         $string ,    $position       $length    	 
${string#substring}	                   $string   ,       $substring   
${string##substring}	                   $string   ,       $substring   
${string%substring}	                   $string   ,       $substring   
${string%%substring}	                   $string   ,       $substring    	 
${string/substring/replacement}	          $replacement,          $substring
${string//substring/replacement}	  $replacement,        $substring
${string/#substring/replacement}	  $string     $substring,     $replacement       $substring
${string/%substring/replacement}	  $string     $substring,     $replacement       $substring

       
-rw-r--r-- 1 root root 0 Dec  1 00:10 eddy_10299_1_finished.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:10 eddy_10299_2_finished.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:10 eddy_10299_3_finished.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:10 eddy_10299_4_finished.jpg
#!/bin/bash
# author:eddy date:2015-11-30
# rename file
# v1.0

for  i in `ls temp/*.jpg`
do
    mv $i `echo ${i%_finished*}.jpg`
done
             
  linux   rename         
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_10.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_1.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_2.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_3.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_4.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_5.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_6.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_7.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_8.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 eddy_9.txt
[root@eddy temp]# rename "eddy" "yys" eddy_*
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_10.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_1.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_2.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_3.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_4.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_5.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_6.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_7.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_8.txt
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_9.txt
       
     rename  
[root@eddy temp]# rename "txt" "jpg" yys_*
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_10.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_1.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_2.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_3.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_4.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_5.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_6.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_7.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_8.jpg
-rw-r--r-- 1 root root 0 Dec  1 00:33 yys_9.jpg