2020年4月1日水曜日

ラズパイ28

ファイルのリネーム・コピー・移動・同期など、Windowsだとフリーウェアで対応する方が多いと思うが、Linuxの場合はコマンド叩けって感じだ。コマンドを少しだけ学び、ラズパイで動かしてみた。

【リネーム・コピー・移動】
ーーーーーーーーーーーーーーーーーーーー
#! /bin/bash

#Blackを含むtextファイルから特定の文字列[akasatana]を削除する
rename 's/\[akasatana\]\ //' *Black*.txt

#Blackを含むtextファイルの移動
find ./ -type f -name "*Black*" -print0 | xargs -0 -I{} mv {} /media/pi/Public/Black

#Blackを含むtextファイルのコピー
find ./ -type f -name "*Black*" -print0 | xargs -0 -I{} cp {} /media/pi/Public/Black
ーーーーーーーーーーーーーーーーーーーー
こんなテキストファイルをtest.shとしてデスクトップ等に保存したら
chmod 755 /home/pi/Desktop/test.sh
として実行権限を与える。

そうすると、次回からは、ダブルクリックしたら実行するか、端末開いて実行するか...そういうダイアログボックスが出るようになる。
毎度使うたびにシェルスクリプトを何種類も保存しても良いし、毎回好き勝手に弄って上書きして実行しても良い。いずれにしろシェルスクリプトの雛形を1個は用意しておけば楽だろう。
リネーム・コピーと移動のシェルスクリプトの2つを今回作ったが、もっと早く作るべきだったかなというくらい楽ですね。定型作業の自動化は重要ですね。


【renameが無い場合】
多分、滅多に無い事だと思うけど、Raspbian Buster環境で実験したら、コマンドが見つかりません...となった。無いってどういうこと?と思ったのですが、検索しても殆どのLinuxには入っているという情報ばかり。しょうがないので、雰囲気で以下を実行したらインストールされ、使えるようになった。

sudo apt install rename

ちなみにrename -versionでバージョン確認したらRename Version 1.10となっていた。Raspbian Stretchでバージョン確認したら0.20。どうやら昔からあったコマンドじゃないらしい。しかもRaspbianだけじゃなく、Debian+ラズパイデスクトップ(https://www.raspberrypi.org/downloads/raspberry-pi-desktop/)でも同様に入ってなかった。なんじゃこりゃ。

【同期】
フォルダ内の同期はrsyncというコマンドを使えって事らしい。だが、毎回毎回覚えてられないので「Grsync」というフロントエンドを使ってフォルダ内のファイル同期を行う。Add/Remove SoftwareからGrsyncで検索すれば簡単に導入可能だ。
FreeFileSyncみたいな感じだが、全て英語ってのも辛いかも。日本語化出来ないもんだろうか。というか、FreeFileSyncをarmv7用にコンパイルすれば何とかなるんだろうか...とか色々考えてしまう。今後の課題が残った感じかな。

0 件のコメント: