问题描述
工作过程中,在windows下编写的shell脚本,然后拷贝到linux服务器,这时候脚本文件可能执行失败,一个是权限问题,还有可能是文件问题(dos格式的文件行尾为^M ,而 u n i x 格式的文件行尾为 ,而unix格式的文件行尾为 ,而unix格式的文件行尾为)
#!/bin/bash
cd /home/server/shell
./recPic.bin $1 $2 $3 $4 $5 $6 $7 $8 $9
解决思路:
- 权限问题
# 给sehll目录下所有文件增加权限
chmod -R 775 /home/server/shell
- 文件问题
# 查看行尾符 dos格式的文件行尾为^M$,而unix格式的文件行尾为$
cat -A xxx.sh
# 修改
sed -i "s/\r//" xxx.sh