次のサブフォルダがあるディレクトリがあります/u01/oracle/folders
。
[root@ricusesasctl01vm tax_receipts]# ls -ltr
total 64
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 Argentina
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 Brazil
drwxr-xr-x 3 OICDev1 oic 4096 Mar 1 2021 completed
drwxr-xr-x 3 OICDev1 oic 4096 Mar 1 2021 duplicate
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 EAO
drwxr-xr-x 3 OICDev1 oic 4096 Mar 1 2021 errored
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 Japan
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 Korea
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 SAO
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 SPPO
drwxr-xr-x 3 OICDev1 oic 4096 Mar 1 2021 temp
drwxr-xr-x 4 OICDev1 oic 4096 Mar 1 2021 template
drwxr-xr-x 3 OICDev1 oic 4096 Mar 1 2021 template2
drwxr-xr-x 5 OICDev1 oic 4096 Mar 1 2021 WHQ
drwxr-xr-x 5 OICDev1 oic 4096 May 10 2021 Canada
drwxr-xr-x 3 OICDev1 oic 4096 Jun 8 2021 canada
シェルスクリプトでは
SourceDirectory="/u01/oracle/folders"
TargetDirectory=/u01/oracle/folders"
値の場合は、$SourceDirectory
SAOを除くすべてのサブフォルダを一覧表示したいと思います。
ループでこのコマンドを使用する
#100 Loop through each directory (e.g. brazil, canada, uk)
#
for EachDir in "$SourceDirectory"*;
do
strFiles=""
echo "Current Directory is $EachDir"
私は試した:
SourceDirectory=$(find /u01/oracle/folders -maxdepth 1 -type d \( ! -name SAO \))
ディレクトリSAOをスキップしますが、出力は長いリストです。この文字列をディレクトリに分割するにはどうすればよいですか?
例:
[root@ricusesasctl01vm tax_receipts]# SourceDirectory=$(find /u01/oracle/folders -maxdepth 1 -type d \( ! -name SAO \))
[root@ricusesasctl01vm tax_receipts]# echo $SourceDirectory
/u01/oracle/folders /u01/oracle/folders/duplicate /u01/oracle/folders/Brazil /u01/oracle/folders/completed /u01/oracle/folders/template2 /u01/oracle/folders/Canada /u01/oracle/folders/SPPO /u01/oracle/folders/template /u01/oracle/folders/WHQ /u01/oracle/folders/EAO /u01/oracle/folders/errored /u01/oracle/folders/Korea /u01/oracle/folders/Japan /u01/oracle/folders/Argentina /u01/oracle/folders/temp /u01/oracle/folders/canada
ベストアンサー1
find /u01/oracle/folders -maxdepth 1 -type d \( ! -name SAO \) | while read SourceDirectory
do
echo "$SourceDirectory"
ls "$SourceDirectory"
done