選択したファイルをあるディレクトリから別のディレクトリに移動するシェルスクリプト

選択したファイルをあるディレクトリから別のディレクトリに移動するシェルスクリプト

特定のファイルをあるディレクトリから別のディレクトリに移動する必要があります。 "req_files.txt"ファイルに必要なファイルのリストがあります。

prev_dir=/cygdrive/c/Users/abhisek.samanta/Desktop/New_folder
new_dir=/cygdrive/c/Users/abhisek.samanta/Desktop/New
cd $prev_dir
for i in `cat req_files.txt`
do
   mv $prev_dir/$i $new_dir
done

ただし、次のエラーが発生します。

mv: cannot stat `/cygdrive/c/Users/abhisek.samanta/Desktop/New_folder/dbo.account_address_adt.Table\r': No such file or directory

改行の問題を取り除くためにコマンドを試しましたが、まだ機能しません。

sed -i 's/\r$//' test.sh

ベストアンサー1

まず、\rファイル名からそれらを削除するには、以下を試してください。

FILENAME=$(echo $FILENAME|tr -d '\r')
  • -d 文字を削除

繰り返しでこの方法を使用することをお勧めします。

while read filename ; do
    filename=$(echo $filename |tr -d '\r')
    mv $prev_dir/$filename $new_dir
done < $prev_dir/req_files.txt

おすすめ記事