代码拉取完成,页面将自动刷新
同步操作将从 MJ PC Lab/Shell Utility 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#!/bin/bash
# change file or directory name to UPPER CASE or LOWER CASE
# Usage: chfcase [-ludfr] <file/directory> <file/directory> ...
# -l change file name to lower case (default)
# -u change file name to upper case
# -d change directory
# -f change normal file
# -r recursive
# known issues:
# can not change filename case under MS-Windows
lower=1;
changedir=0;
changefile=0;
recurse=0;
while getopts ':ludfr' opt; do
case $opt in
l)
lower=1;
;;
u)
lower=0;
;;
d)
changedir=1;
;;
f)
changefile=1;
;;
r)
recurse=1;
;;
esac;
done;
shift $(($OPTIND-1));
function chFileCase()
{
oldpathname="$1";
oldname=$(basename "$oldpathname");
path=$(dirname "$oldpathname");
if [ $lower -eq 1 ]; then
newname=$(echo $oldname | tr '[A-Z]' '[a-z]');
else
newname=$(echo $oldname | tr '[a-z]' '[A-Z]');
fi;
newpathname=$path'/'$newname;
oldpathname=$(echo "$oldpathname" | tr -s '/');
oldpathname=${oldpathname#./};
oldpathname=${oldpathname%/};
newpathname=$(echo "$newpathname" | tr -s '/');
newpathname=${newpathname#./};
newpathname=${newpathname%/};
if [ "$oldname" != "$newname" -a -n "$newname" ]; then
if [ ! -e "$newname" ]; then
mv -Tn "$oldpathname" "$newpathname" &&
echo "$oldpathname --> $newpathname [OK]" ||
echo "$oldpathname --> $newpathname [Failed]" >&2
else
echo "$oldpathname --> $newpathname [Skipped, target exists]" >&2
fi;
fi;
}
function iterateFile()
{
local file;
for file in "$@"; do
if [ -n "$file" -a -e "$file" ]; then
if [ -d "$file" ]; then
if [ $recurse -eq 1 ]; then
eval "iterateFile '${file%/}'/*"
fi;
if [ $changedir -eq 1 ]; then chFileCase "$file"; fi;
else
if [ $changefile -eq 1 ]; then chFileCase "$file"; fi;
fi;
fi;
done;
}
startFiles=$@;
if [ -z "$startFiles" ]; then
echo "Usage: $(basename $0) [-ludfr] <file/directory> <file/directory> ..." >&2
fi;
iterateFile "$@";
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。