Mimo, że sposób Muruprintf
nie może zostać pokonany, osobiście lubię jot
takie rzeczy. jot
nie jest domyślnie instalowany w Ubuntu. athena-jot
Pakiet zawiera go. Każde z tych poleceń działa:
mkdir -p "$(jot -s/ -c 26 A)"
jot -s/ -c 26 A | xargs mkdir -p
Ułatwi to naprawdę każde polecenie, które generuje sekwencję liter i łączy je ukośnikami, ponieważ ich dane wyjściowe można następnie przekazać mkdir -p
albo przez zastąpienie polecenia (jak w odpowiedzi muru ), albo za pomocą xargs
. Oto kilka przykładów z użyciem kilku narzędzi xargs
, które nie wymagają instalacji oprogramowania, z wyjątkiem być może na bardzo minimalnych systemach lub Ubuntu Core:
perl -we 'print join "/", A..Z' | xargs mkdir -p
ruby -we 'print (?A..?Z).to_a * ?/' | xargs mkdir -p
python3 -c 'print("/".join(__import__("string").ascii_uppercase))' | xargs mkdir -p
Stare wersje Ubuntu pochodzi z Python 2 zamiast Python 3. W tym celu wystarczy zmienić python3
się python
, aby to ostatnie dzieło polecenia, jeśli naprawdę chcesz to zrobić z poziomu Pythona.
Podobnie, krótki i prosty sposób muru można alternatywnie napisać:
printf '%s/' {A..Z} | xargs mkdir -p
Końcowe /
, w ścieżce katalogu, o którą mkdir -p
prosi się o utworzenie, nie stanowi problemu i jest prawdopodobnie preferowane stylistycznie. Ale można to pominąć, podobnie jak inne przykłady w tej odpowiedzi.