Programing

Bash에서 알파벳 반복

lottogame 2020. 10. 21. 07:34
반응형

Bash에서 알파벳 반복


mv'x'로 시작 하는 모든 파일을 'x'디렉토리에 저장 하고 싶습니다 . 같은 것 :

mv path1/x*.ext path2/x

모든 알파벳 문자 a, ..., z에 대해 수행하십시오.

알파벳을 통해 'x'루프를 만드는 bash 스크립트를 어떻게 작성할 수 있습니까?


for x in {a..z}
do
    echo "$x"
    mkdir -p path2/${x}
    mv path1/${x}*.ext path2/${x}
done

시작해야합니다.

for letter in {a..z} ; do
  echo $letter
done

중첩 중괄호 확장을 사용하여 스페인어 알파벳을 생성하는 방법은 다음과 같습니다.

for l in {{a..n},ñ,{o..z}}; do echo $l ; done | nl
1  a
 ...
14  n
15  ñ
16  o
...
27  z

아니면 간단히

echo -e {{a..n},ñ,{o..z}}"\n" | nl

사용하지 않는 29 자 스페인어 알파벳 을 생성하려는 경우

echo -e {{a..c},ch,{d..l},ll,{m,n},ñ,{o..z}}"\n" | nl

프랑스어 알파벳이나 독일어 알파벳도 비슷합니다.


사용 rename:

mkdir -p path2/{a..z}
rename 's|path1/([a-z])(.*)|path2/$1/$1$2' path1/{a..z}*

파일 이름에서 선행 [az] 문자를 제거하려는 경우 업데이트 된 perlexpr은 다음과 같습니다.

rename 's|path1/([a-z])(.*)|path2/$1/$2' path1/{a..z}*

대문자로도

for letter in {{a..z},{A..Z}}; do
  echo $letter
done

참고 URL : https://stackoverflow.com/questions/7300070/looping-through-alphabets-in-bash

반응형