-2
私は現在、FTP上にいくつかのIPカメラ画像を持っています。たとえば、カメラから192.168.1.50_01_20170308114736213_TIMING.jpgの形式で入力します。ファイルをサブディレクトリに名前を変更するBashスクリプト - ファイル名に基づいて
私はこれらのファイルの名前をカメラ名に続けてDD/MM/YYYY_HHMMで画像の日時を付けるバッチスクリプトを探しています。 おかげ
私は現在、FTP上にいくつかのIPカメラ画像を持っています。たとえば、カメラから192.168.1.50_01_20170308114736213_TIMING.jpgの形式で入力します。ファイルをサブディレクトリに名前を変更するBashスクリプト - ファイル名に基づいて
私はこれらのファイルの名前をカメラ名に続けてDD/MM/YYYY_HHMMで画像の日時を付けるバッチスクリプトを探しています。 おかげ
これは、引数としてuが
EX JPGファイルwtihディレクトリへのパスを使用して、私のスクリプトです。 ./script.sh /ホーム/ユーザー/ cam_photos
#!/bin/bash
directory=$1
temp_file=temp.txt
new_file=new.txt
filter2_out=filter2_out.txt
filter3_out=filter3_out.txt
name_out=out.txt
old_names=old.txt
new_names=new_names.txt
command_to_do=command.txt
function ReadFilenames()
{
cd $directory
ls -1 > $old_names
ls -1 | sed 's/^[^_]*_//' | sed 's/^[^_]*_//' | sed 's/_TIMING//' > $temp_file
}
function Filter_1()
{
awk -v clist='4 6 8 12' '
BEGIN { n = split(clist, cl,//)
}
{ for(i = n; i; i--)
$0 = substr($0, 1, cl[i]) " " substr($0, cl[i] + 1)
print
}' $temp_file > $new_file
}
function Filter_2()
{
awk '{print $3,$2,$1,$4}' $new_file > $filter2_out
}
function Filter_3()
{
sed 's/ /_/g; s/$/.jpg/' $filter2_out > $filter3_out
}
function NameOutput()
{
sed 's/$/.jpg/' $filter3_out > $name_out
}
function Make_command()
{
sed 's/^/mv /' $old_names > $new_names
sleep 1
paste -d' ' $new_names $filter3_out > $command_to_do
}
function Run()
{
bash $command_to_do
}
function Clear()
{
rm $temp_file $new_file $filter2_out $filter3_out $name_out $old_names $new_names $command_to_do
}
ReadFilenames
Filter_1
Filter_2
Filter_3
NameOutput
Make_command
Run
Clear
ユアーズ名:
192.168.1.50_01_20170308114236213_TIMING.jpg
192.168.1.50_01_20170308114336213_TIMING.jpg
192.168.1.50_01_20170308114436213_TIMING.jpg
192.168.1.50_01_20170308114536213_TIMING.jpg
192.168.1.50_01_20170308114636213_TIMING.jpg
192.168.1.50_01_20170308114736213_TIMING.jpg
OUTPUT:あなたはIPを作成する方法を
08_03_2017_1142.jpg
08_03_2017_1143.jpg
08_03_2017_1144.jpg
08_03_2017_1145.jpg
08_03_2017_1146.jpg
08_03_2017_1147.jpg
を持っていますかに対応カメラ名?また、これまでに何を試しましたか? – Aserre
'/'はファイル名に有効な文字ではありませんので、他のデリミタに変更する必要があります –
私は実際にスクリプトをオンラインで見つけて助けてくれました - 私は本当に分かりませんが - exif情報を取得しようとしていますここにhttps://ubuntuforums.org/showthread.php?t=2328946 - exif情報がないので、ファイルを20170308のようにフォーマットしています。104742 – kiteboy