Linux 文字化けファイルの消し方・変更方法

当社の個別教室PICSISでは、授業レポートを毎回作成して渡しています。

そのとき、複合機でスキャンしてクラウドのファイルサーバにPDFファイルとして保存しています。先生たちは授業の進行をタブレットでクラウドのPDFファイルを確認して進めるようにしています。

セキュリティやバックアップについても対策済みなんですが、今回けっこうめんどくさい事象が発生したのでトラブルシュートしました。その、忘備録です。

事象:
Androidタブレット・iPadタブレット・Windows8/10・Mac からある生徒名のフォルダが文字化けしてアクセスできない。
そのある生徒の名前なんですが、旧字の”吉”が含まれていたことが事の発端。
上記のようにWebDAV.ftp(GUI・コマンド)を駆使してもアクセスできない。ということは、renameもrmもmvもcpもできない。。。
せめて作成したiPad上からはアクセスできそうなもんですが。。
ちなみに、文字コードはUTF-8で統一。
バックアップから戻そうとするが0バイトでダウンロードされてしまう。

完全にアプリからコールされるコマンドがコケてる様子。。シンプルなftpクライアントからのコマンドですら。

 

対処:
ここまでくると提供サーバーへ乗り込んでコマンドでやっつけるしか方法はないですね (^_^;)
大抵のサーバーはLinuxですからsshログインさえできればなんとかなりますね。

コマンド例
サーバーログイン:
ssh ユーザー名@sshサーバー名 -pポート番号

お目当てのディレクトリへ移動していきます。
cd REPORT/☓☓☓

ファイルリストを表示
-bash-4.1$ ls
??????田
↑これです。(^_^;) 個人名なので具体的な正規表現は省略しますが、おしりに田があるので
ls -l *田/
のようにして??????田の配下のファイル名が表示されればOK。

renameコマンド前にバックアップを取得するのが先決ですね。
コピーコマンドでhelpディレクトリへファイルをコピーします。
cp -rp *田/*.pdf help

ls コマンドでhelpディレクトリにファイルがコピーされていれば、晴れて文字化けディレクトリを消すことができますね。
この、文字化けディレクトリって結構コワイんですよね。
要は文字化けしていることでファイル名やディレクトリ名の終端が認識できていないことがあるんです。
ls -l *田/
のようにして??????田の配下のファイル名が表示でき、安心してrenameしちゃうと他のファイル(バイナリ)に影響がでることがあります。
この事象はほんと怖いです。気がついてすぐ戻せば大丈夫ですが、ftpでファイル追加なんてしてしまったら、ファイルの終端コードがもうグチャグチャです。。
文字化けディレクトリは直す(rename)より新規作り直しがお勧めです。

全てうまくいったら文字化けディレクトリともおさらば。
rm -r
で消しましょう。

全てのOSからもきちんと表示されていればバックアップを取得して完了です☆

今回はSIerなら初歩のファイル操作コマンドですが、GUIだけでクリック・クリックで進まなくなった。
そんなイザ!というときにはお試しください。

ついでなので、権限(idコマンド)とOS(uname -a)、発行できるコマンド(help)なんかも確認してログアウト!

感想:

やはりLinuxのコマンドは頼りになります。というよりはシェル(今回はbash)。

大学生でもタブレットばかりでWindowsのファイル操作もできない。。なんて記事もみかけます。

タイトルとURLをコピーしました