ログに記録するすべてのファイルを検索し、ログに文字列を追加する BASH

ログに記録するすべてのファイルを検索し、ログに文字列を追加する BASH

フォルダ内のすべてのファイルを検索し、リスト(ログ)と各追加先行の先頭にログを作成します「mkdir -p /VOLUME1/path

このような:

/volume1/TEST/folder1/1.jpg
/Volume1/TEST/folder2/2.jpg

これを試してみます: 1#cd ディレクトリ:

cd /volume1/TEST

2#ログを作成する

ls **/* >/volume1/log.txt

3#新しいパスを追加(文字列)

sed -e 's/^/mkdir -p /VOLUME1/TEST2/' /volume1/log.txt >/volume1/log2.txt

すべての行にこれを追加する必要があります:

mkdir -p /Volume1/TEST2/folder1/1.jpg
mkdir -p /Volume1/TEST2/folder2/2.jpg
.
.

しかし、私の出力は"/Volume1/TEST2/ folder1/1.jpg" (私は逃し"mkdir -p/Volume1/"、ギャップはさらに

(Linux) の場合

答え1

バックスラッシュをエスケープする必要があります。少なくとも、私の場合はうまくいきました。

sed -e 's/^/mkdir -p \/VOLUME1\/TEST2\//' log.txt > log2.txt

結果の始まり:

mkdir -p /VOLUME1/TEST2/confEclipse/MIT-Eclipse-CheckStyle-20160408.xml
mkdir -p /VOLUME1/TEST2/confEclipse/MIT-Eclipse-CodeStyle-CleanUp-20160408.xml
mkdir -p /VOLUME1/TEST2/confEclipse/MIT-Eclipse-CodeStyle-CodeTemplates-20160408

関連情報