SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

tarで日本語のファイル名が文字化けした

問題

さくらのレンタルサーバーのcronでファイルのバックアップをtarで取ろうとしたら、日本語を含むファイル名が文字化けして、エラーが出てました。

: Can't translate pathname 'home/xxxxxx/www/wp-content/uploads/2022/07/logo大.png' to UTF-8

答え

言語の設定が LANG=C などになっているのでは。

cronなら、環境変数の定義をそのまま書けばよい。

crontab -e の先頭に以下を追記する。

LANG=ja_JP.UTF-8

0 3 * * * tar ~~~

先頭にメール送信先を書くのと同じ形。

MAILTO=user@example.com

0 3 * * 0 hoge fuga

ログインシェルでは以下のようなコマンドで作業時の環境変数を設定する。

csh

$ setenv LANG ja_JP.UTF-8

bash

$ export LANG=ja_JP.UTF-8

いつもそのように設定されていてほしい場合は、.cshrc や .bashrc に書くとよい。

関連するメモ

コメント