[求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

sh/bash/dash/ksh/zsh等Shell脚本
头像
wjchen
帖子: 583
注册时间: 2011-05-02 19:08
系统: ubuntu 12.04

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#16

帖子 wjchen » 2012-04-09 22:17

从你diff输出结果来看,两个文件的2到31行都不一样。第一个文件每行的末尾似乎多了某种空白字符,但又看不出是什么。
头像
sunfish
帖子: 989
注册时间: 2008-05-03 1:53

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#17

帖子 sunfish » 2012-04-09 22:39

你用cat -A 看看是不是有特殊字符
docker && kubernetes
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#18

帖子 自由建客 » 2012-04-09 22:43

代码: 全选

diff -u f1 f2
[diff]@@ -17,7 +17,7 @@
if [ -e /etc/udev/udev.conf ]; then
. /etc/udev/udev.conf
fi
-if ! mount -t devtmpfs -o mode=0755 none /dev; then
+if ! mount -t devtmpfs -o size=$tmpfs_size,mode=0755 none /dev; then
echo "W: devtmpfs not available, falling back to tmpfs for /dev"
mount -t tmpfs -o size=$tmpfs_size,mode=0755 udev /dev
[ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1
[/diff]
fengmanloude
帖子: 95
注册时间: 2011-05-21 19:35

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#19

帖子 fengmanloude » 2012-04-09 23:03

wjchen 写了:从你diff输出结果来看,两个文件的2到31行都不一样。第一个文件每行的末尾似乎多了某种空白字符,但又看不出是什么。
:em38 厉害~
经你提示我注意到test3是我从word文档里复制的 后面会有个空白 删掉后until变量果然正常了 :em11
这可真是一个空格弄晕人哦~ :em03
fengmanloude
帖子: 95
注册时间: 2011-05-21 19:35

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#20

帖子 fengmanloude » 2012-04-09 23:05

aerofox 写了:
fengmanloude 写了:
aerofox 写了:如果看 diff 结果嫌不直观的话,用

代码: 全选

gvimdiff 文件1 文件2
输入 gvimdiff test3 test4
显示
程序“gvimdiff”已包含在下列软件包中:
* vim
* vim-gnome
* vim-tiny
* vim-gtk
* vim-nox
请尝试:sudo apt-get install <选定的软件包>

我最近才装得vim 看这架势我也不确定再装哪一个?
建议安装 vim-gnome。


恩 装了啊~
装了之后 输入你说的命令进行比较时 两个窗口不同颜色显示 果然够直观啊~ :em11
fengmanloude
帖子: 95
注册时间: 2011-05-21 19:35

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#21

帖子 fengmanloude » 2012-04-09 23:07

sunfish 写了:你用cat -A 看看是不是有特殊字符


是cat -A 加文件名吗?
试了下啊 都显示的是$
fengmanloude
帖子: 95
注册时间: 2011-05-21 19:35

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#22

帖子 fengmanloude » 2012-04-09 23:14

自由建客 写了:

代码: 全选

diff -u f1 f2
[diff]@@ -17,7 +17,7 @@
if [ -e /etc/udev/udev.conf ]; then
. /etc/udev/udev.conf
fi
-if ! mount -t devtmpfs -o mode=0755 none /dev; then
+if ! mount -t devtmpfs -o size=$tmpfs_size,mode=0755 none /dev; then
echo "W: devtmpfs not available, falling back to tmpfs for /dev"
mount -t tmpfs -o size=$tmpfs_size,mode=0755 udev /dev
[ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1
[/diff]

恩 :试了~
后面这段挂载的代码看不太懂的说~
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#23

帖子 lilydjwg » 2012-04-09 23:16

fengmanloude 写了:
wjchen 写了:从你diff输出结果来看,两个文件的2到31行都不一样。第一个文件每行的末尾似乎多了某种空白字符,但又看不出是什么。
:em38 厉害~
经你提示我注意到test3是我从word文档里复制的 后面会有个空白 删掉后until变量果然正常了 :em11
这可真是一个空格弄晕人哦~ :em03
这你也敢复制!
你还只是晕了呢,有些人估计想死的心都有了,请 Google「一个空格引发的惨案」。
cao627
帖子: 992
注册时间: 2007-12-05 10:57
系统: ubuntu14.04
来自: 金山

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#24

帖子 cao627 » 2012-04-09 23:23

这个空格怎么表示的?
即查找替换命令里查找的位置输入什么或怎么输入?

比如回车符是 \r 或ctrl+v+m 而且在vim中是看的见的
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#25

帖子 自由建客 » 2012-04-10 0:05


恩 :试了~
后面这段挂载的代码看不太懂的说~
没要你看懂,我只是意思一下,告诉你 diff 怎么用而已。
fengmanloude
帖子: 95
注册时间: 2011-05-21 19:35

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#26

帖子 fengmanloude » 2012-04-10 10:38

cao627 写了:这个空格怎么表示的?
即查找替换命令里查找的位置输入什么或怎么输入?

比如回车符是 \r 或ctrl+v+m 而且在vim中是看的见的
昨晚已经删掉了 具体怎么表示我也不是很清楚 我把原版截个图吧
就是word里的黑方块 ~
附件里我上传了word稿 有兴趣的话你也可以自己测试下~
附件
LinuxShell脚本编程实例.doc
(29 KiB) 已下载 48 次
1.png
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: [求助]为什么我感觉这两个程序相同 可是只有一个能输出正确结果啊?

#27

帖子 lilydjwg » 2012-04-10 12:52

fengmanloude 写了:
cao627 写了:这个空格怎么表示的?
即查找替换命令里查找的位置输入什么或怎么输入?

比如回车符是 \r 或ctrl+v+m 而且在vim中是看的见的
昨晚已经删掉了 具体怎么表示我也不是很清楚 我把原版截个图吧
就是word里的黑方块 ~
附件里我上传了word稿 有兴趣的话你也可以自己测试下~
那个是 LibreOffice Orz....

LibreOffice 里的黑方块表示不间断字符,所以那里应该是不间断空格,0xa0,shell 当然不认识了。你直接贴网页上就变成普通空格了。
回复