[Script] Linux File Name 大小寫轉換

在網誌的維護上常常忘了加框就順手把圖給傳了,這時快的做法是砍檔重傳.
但圖片的maintain ID就會虛胖不少,且如果已經加了tags或註解就得一樣重頭再來.
於是進shell把實際mapping的file換成加框後的方式就比較實際
一定免不了面對問題,就是傳上wordpress的圖會自動轉成小寫的file store起來.
於是不是手工來轉就必須寫個Script來做這件事.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/sh
 
#對當前目錄下.*.jpg || *.JPG 處裡大小寫轉換
dir=`pwd`;
files=`find $dir -type f |egrep '*\.jpg|*\.JPG'`;
for i in $files
do
dir_name=`dirname $i`;
ori_filename=`basename $i`
new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;
# 大轉小 tr [:upper:] [:lower:] 小轉大 tr [:lower:] [:upper:]
mv $dir_name/$ori_filename $dir_name/$new_filename
done
 
#修改使用者,群組,權限
sudo chown apache *.jpg
sudo chgrp apache *.jpg
sudo chmod 664 *.jpg

參考來源:
shell script 大量/批次 修改檔名 大寫小寫~~~
https://sites.google.com/site/tiger2000/shell-script
http://www.ptt.cc/bbs/Linux/M.1211479471.A.E8C.html

Facebook Comments
Scottj Written by:

史考特 喜歡3C 愛拍照