0

多くのファイル名を返す 1 つのコマンドからファイル名を抽出し、それらを 1 つのファイル コードに入れています。

echo `find ${FILE_SYSTEM}/${dir_name}/${sub_dir_name} -type f -size +${BADFILES_SIZE} -exec ls -1lutr {} \; | sort -rn | awk '{print $9}'` >> Somefile.txt

ここでの問題は、各行でファイル名を取得していないことです。1 行に 2 つのファイル名を指定します。しかし、私は各ファイル名を1行にしたいと思っています。

例:

/informatica/ETD/PC9/scripts/kamil/temp/temp1.txt /informatica/ETD/PC9/scripts/kamil/temp/temp2.txt

上記のようにファイル名を取得していますが、以下に示すようにしたいです。

/informatica/ETD/PC9/scripts/kamil/temp/temp1.txt
/informatica/ETD/PC9/scripts/kamil/temp/temp2.txt

あなたの提案をしてください、

4

1 に答える 1

1

問題はecho、バックティックを使用していることです。しないでください!は、すべてのecho引数 (2 つのファイルのリストのように見えます) を 1 行の出力にフラット化します。

違う:

echo `find ${FILE_SYSTEM}/${dir_name}/${sub_dir_name} -type f -size +${BADFILES_SIZE} -exec ls -1lutr {} \; | sort -rn | awk '{print $9}'` >> Somefile.txt

右:

find ${FILE_SYSTEM}/${dir_name}/${sub_dir_name} -type f \
     -size +${BADFILES_SIZE} -exec ls -1lutr {} + |
sort -rn |
awk '{print $9}' >> Somefile.txt
于 2013-01-22T05:42:39.710 に答える