В bash используйте что-то вроде этих строк:
mkdir -p {mydir,hisdir,herdir}/doc
touch {mydir,hisdir,herdir}/doc/doc1.txt
Синтаксис {...}
называется «раскрытием фигурных скобок», и в отличие от расширения имени пути , где имя файла должно существуют, сгенерированные результаты не обязательно должны совпадать с чем-либо, что уже существует. И -p
означает создание всех вложенных компонентов пути по мере необходимости - в противном случае вы получите сообщение об ошибке, поскольку mkdir попытается создать окончательные каталоги «doc» перед родителями.
(Ознакомьтесь с примерами на странице руководства bash; создание подобных подкаталогов является обычным вариантом использования.)
Если mydir, hisdor и herdir уже существуют, и вы не хотите их вводить повторно, то можно использовать Stéphane Chazelas's решение, вероятно, является самым умным, но если вы не делаете это все время, умный не всегда лучший - я никогда не могу вспомнить, что такое расширение массива bash, и держу пари, что многие младшие системные администраторы не узнают его. В этом случае, я думаю, я бы порекомендовал либо цикл, либо find
, например:
find . -maxdepth 1 -mindepth 1 -type d \
-execdir mkdir {}/doc \; -execdir touch {}/doc/doc1.txt \;
, но, на самом деле, простой цикл имеет то преимущество, что он прост - и не более того!
Внутри задней части обратной косички цитаты следующего символа. Таким образом, вы получаете вывод из команды
ssh -q ${SIDHost} ". /usr/vmmc/bin/oracle_scripts/useq $ThisSID; echo $HOST_IS_ERPDB"
, которые вам нужны \\
вместо этого:
ERPTest=`ssh -q ${SIDHost} ". /usr/vmmc/bin/oracle_scripts/useq $ThisSID; echo \\$HOST_IS_ERPDB"`
так, чтобы erptest
устанавливается на вывод команды
ssh -q ${SIDHost} ". /usr/vmmc/bin/oracle_scripts/useq $ThisSID; echo \$HOST_IS_ERPDB"
Используйте $ (...)
вместо устарелого `...` `
. Обратите внимание, что на некоторых версиях AIX вам может потребоваться использовать / bin / sh
или ksh93
вместо античного / bin / ksh
.
ERPTest=$(ssh -q ${SIDHost} ". /usr/vmmc/bin/oracle_scripts/useq $ThisSID; echo \$HOST_IS_ERPDB")