我写了个脚本,去解压一个abc.rar文件。该rar文件里面有中文文件名的pdf文件。因为rar文件是在windows生成的,所以我怀疑这些文件名的编码是gb2312。
#!/bin/bash
rar e abc.rar *.pdf ~/test/
该脚本在bash shell下面手工执行没有问题。这里是说文件能够被解压,文件名显示中文。(因为我的pietty是unicode编码的,所以被解压出来的文件名也是unicode编码的--这就是我想要的结果)
但是如果我把这个脚本放入crontab,让系统自动执行时,出现了两个情况
1、解压出来的文件名变成了乱码。
2、只有一部分pdf被解压出来。
所以,我想发帖询问一下,造成这个问题的可能的原因,并寻找一个比较好的解决方案。另外,我这里做了一些研究:
如果把脚本改成
#!/bin/bash
export LANG=zh_CN.UTF-8
rar e abc.rar *.pdf ~/test/
那解压出来的文件名都正常(也就是unicode编码),但是文件数还是缺。
另外,手工调用~/.bashrc:
#!/bin/bash
source ~/.bashrc
rar e abc.rar *.pdf ~/test/
不能解决任何问题。文件名还是乱码,并且文件还是缺。
求教crontab执行和shell执行的区别
sh/bash/dash/ksh/zsh等Shell脚本
前往
- 公告/注意事项
- ↳ 新闻和通知
- ↳ 软件推荐
- 系统安装
- ↳ 教学和常见问答
- ↳ 系统安装和升级
- ↳ 启动和引导
- ↳ 网卡无线拨号
- ↳ 硬件与内核
- ↳ 笔记本及便携设备
- ↳ Ubuntu衍生版
- ↳ 其他类Unix OS发行版
- ↳ Debian发行版
- 配置美化
- ↳ 中文显示和输入法
- ↳ 个人配置文件存放点
- ↳ 软件文档翻译
- ↳ 窗口管理器及美化
- ↳ 桌面展示
- 软件使用
- ↳ 办公、图像、机械电子设计等
- ↳ Vim和Emacs
- ↳ 开源模板库
- ↳ 互联网相关软件
- ↳ 影音多媒体
- ↳ 游戏和模拟器
- ↳ 虚拟机和虚拟化
- ↳ Wine及其分支
- ↳ 其它类软件
- 服务器管理
- ↳ 服务器运维
- ↳ 云计算和容器(K8S/KVM/Docker/WSL等)
- ↳ Ubuntu VPS
- 程序设计与开发
- ↳ Shell脚本
- ↳ 软件/网站开发
- ↳ 内核及嵌入式开发
- ↳ Ubuntu编译和打包
- ↳ 开源小工具
- ↳ 挑战任务
- 感想与交流
- ↳ 深度PK版
- ↳ Ubuntu故事和感慨
- ↳ 同城交流
- ↳ 校园社团
- ↳ 港澳台校区
- ↳ 国外校区
- 站务区
- ↳ 论坛管理
- ↳ Ubuntu中文网上商店