'에있는 단어의 첫 글자를 대문자로 쓰는 스크립트는 각 단어의 첫 번째 글자가 대문자가되도록 mysql 데이터베이스의 테이블 이름을 변경하려고합니다. 예를 들어 "renametable"이라는 테이블은 "RenameTable"이됩니다. 올바른 데이터베이스에서 테이블 이름을 가져 와서 관리하는 동료 스크립트를 두 개 가지고 있지만 서버를 변경 한 후에는 더 이상 작동하지 않습니다. 나는 무엇이 바뀌 었는지 잘 모르겠습니다. 그래서 당신이 나를 도울 수 있기를 대비해서 여기에 대본을 게시 할 것입니다.파일 이름
우선은/루트 폴더에이 스크립트를 배치했다 데이터이고, 는 MySQL 데이터베이스 폴더로 이동하여 실행
ls -1 | xargs -i /root/rename2.sh {}
rename2.sh :
force=`echo $1 | tr [:upper:] [:lower:]`
if [ -f $1 ];then
mv $1 $force
fi
그 후 다른 명령을 실행해야했습니다.
ls -1 ../<gooddb> | xargs -i /root/rename.sh {}
gooddb 올바른 테이블 명명 구조의 데이터베이스입니다 0
rename.sh :
: not founde2.sh: 2: /root/rename2.sh:
/root/rename2.sh: 7: /root/rename2.sh: Syntax error: end of file unexpected (expecting "then")
그리고 : 이제 내가 오류를 얻을 첫 번째 명령을 실행할 때
#!/bin/sh
lower=`echo $1 | tr [:upper:] [:lower:]`
if [ -f $lower ];then
mv $lower $1
fi
이후 두 번째 명령의 오류 :
xargs: /root/rename.sh: No such file or directory file
두 파일을 완벽하게 제어 할 수는 있지만
"seedoneat"을 어떻게 구문 분석하겠습니까? "SeeDonEat"또는 "SeedOneAt"입니까? 그럼에도 불구하고, 이것 :'],'이 문제가 될 것입니다. 그때'.. – twalberg