アルファベット順にスクリプトからコマンドを実行する

アルファベット順にスクリプトからコマンドを実行する

私はadbシェルを使ってAndroidデバイス上の複数のファイルにタイムスタンプを設定したいと思います。

何らかの理由で指定された特定のタイムスタンプを使用してタッチを実行しても機能しません。また、タッチを使用するAndroid busyboxシェルではファイルグロービングは機能しません。

そのため、フォルダ内のすべてのファイルに対してtouchコマンドを実行するためにシェルスクリプトを使用しました。

for file in `ls`; do touch "$file"; done

問題は、アルファベットの逆順で実行し、連続的に完了することを保証し、a.pngタイムスタンプが常にb.pngより遅くなるように特定の順序でコマンドを実行しないことです。

可能ですか?

ベストアンサー1

タッチを使用して将来の時間を設定できます。

T=$(date +%s)
for file in $(ls | sort -r); do
  touch -t $(date '+%Y%m%d%H%I.%S' --date="@$T") $file
  let T=$T+1
done

sortお使いのデバイスにない場合は、インストールされていることをbusybox確認してください。

おすすめ記事