Этот сценарий удара делает то, в чем Вы нуждаетесь:
#!/bin/bash
for dir in .*/ ; do
[[ $dir == ./ || $dir == ../ ]] && continue # Skip the special dirs
new=${dir#.} # Remove the dot at the beginning
new=./${new//.//} # Replace dots with slashes, prepend ./
new=${new%/} # Remove the trainling slash
mkdir -p ${new%/*} # Create the parent dir
mv "$dir" "$new" # Move the dir to destination
done
Я проверил руководство по UNAME (MAN MAN MAME), и он говорит следующее для опции «-A»:
print all information, in the following order, except omit -p and -i if unknown
в Ubuntu, я думаю, варианты «-M», «-P» и «-I» (Machine » , процессор и аппаратная платформа) возвращают архитектуру машины. Например, если вы используете команду
uname -mpi
, вы увидите:
x86_64 x86_64 x86_64
с другой стороны, если вы выберете все возможности:
uname -snrvmpio
Вы получите тот же результат, что и:
uname -a
Выход:
Linux <hostname> 3.13.0-29-generic #53-Ubuntu SMP Wed Jun 4 21:00:20 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
I Также выполнил «безмятежность» с вариантами «-M», «-P» и «-i» на archlinux distro и у меня есть другой ответ:
x86_64 unknown unknown
на самом деле, когда я попросил «немали» на archlinux DISTRE Ответ был:
Linux <hostname> xxxxxx-ARCH #1 SMP PREEMPT Mon Feb 14 20:40:47 CEST 2015 x86_64 GNU/Linux
Пока при выполнении «uname -snrvmpio» на archlinux distro я получил:
Linux <hostname> xxxxxx-ARCH #1 SMP PREEMPT Mon Feb 14 20:40:47 CEST 2015 x86_64 unknown unknown GNU/Linux