İstiyorum mv
'x' dizinine 'x' ile başlayan tüm dosyalar; gibi bir şey:
mv path1/x*.ext path2/x
ve bunu tüm alfabe harfleri için yapın a, ..., z
Alfabede 'x' döngüleri oluşturan bir bash betiğini nasıl yazabilirim?
İstiyorum mv
'x' dizinine 'x' ile başlayan tüm dosyalar; gibi bir şey:
mv path1/x*.ext path2/x
ve bunu tüm alfabe harfleri için yapın a, ..., z
Alfabede 'x' döngüleri oluşturan bir bash betiğini nasıl yazabilirim?
Yanıtlar:
for x in {a..z}
do
echo "$x"
mkdir -p path2/${x}
mv path1/${x}*.ext path2/${x}
done
"$x"
yeterlidir ve onu öne çıkarmanın daha iyi bir yoludur.
iç içe küme ayracı genişletmeyi kullanarak İspanyol alfabesini nasıl oluşturacağınız burada
for l in {{a..n},ñ,{o..z}}; do echo $l ; done | nl
1 a
...
14 n
15 ñ
16 o
...
27 z
Ya da sadece
echo -e {{a..n},ñ,{o..z}}"\n" | nl
Eski 29 karakter İspanyol alfabesini oluşturmak istiyorsanız
echo -e {{a..c},ch,{d..l},ll,{m,n},ñ,{o..z}}"\n" | nl
Fransız alfabesi veya Alman alfabesi için de aynısı yapılabilir.
Büyük harfle de
for letter in {{a..z},{A..Z}}; do
echo $letter
done
Bu soru ve cevaplar sorunumda kısmen bana yardımcı oldu.
Ben gerekiyordu aşkın bir büyüteç alfabenin kısmını bash.
Genişletme kesinlikle metinsel olmasına rağmen
Bir çözüm buldum ve daha da basitleştirdim:
START=A
STOP=D
for letter in $(eval echo {$START..$STOP}); do
echo $letter
done
Hangi sonuç:
A
B
C
D
Çözmem gereken aynı sorunu arayan biri için yararlı olmasını ve burada biteceğini umuyorum