-1
私が達成しようとしていることは、タイトルよりも複雑ですが、合理的に短くしたいと思いました。私は次のことを試みています。あるディレクトリから別のディレクトリにファイルをコピーする
"ディレクトリXXXのように、名前が引数として与えられ、名前が別の引数として与えられている別のディレクトリを生成する画像のディレクトリをとります。それらの画像のコピーが、サイズの半分(線形寸法)です」
私は以下のスクリプトを使ってそれを試みました。
#!/bin/bash
if [ "$1" != "" ]; then
orgdir$1
fi
if [ "$2" != "" ]; then
cpydir=$2
fi
find "${orgdir}" | while read -r file
do
filesize=$(wc -c <"$orgdir$file")
dd if=$orgdir of=$cpydir bs=$(($filesize/2))
done
ターミナルで実行しています./script.sh//Test//TestMove次のエラーが発生します。
line 11 ./Test./Test: No such file or directory.
私はちょうど$ファイルのWCの-cを取得しようとしたが、それは、wcが、標準入力
としてディレクトリを取ると言います。
line 12 ""/2: syntax error: operand expected (error token is """/2")
ファイルサイズに正しい値が指定されていない可能性がありますか?
また、ファイルをコピーするのにddを使用するかどうかわからないので、半分のサイズが最善の方法ですが、他のものを見つけることはできません。
画像ファイルの半分のバイトをコピーし、おそらく有効なイメージをもたらすことが起こっていません。 – chepner
ええ、私は最初にその仕事を読んだときにそれを考えていました。正直言って私が半分をコピーするか、それを圧縮するかどうかはわかりません。後者は可能ですか? – Chaz
文字通り「300x300イメージを150x150イメージに変換する」という意味であれば、ファイルのフォーマットを理解するプログラムを使用する必要があります。 – chepner