设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 499|回复: 0
收起左侧

请教一个shell问题?

[复制链接]
发表于 2021-6-10 16:53:06 | 显示全部楼层 |阅读模式
linux版本:
[root@localhost aw]# uname -a
Linux localhost.localdomain 3.10.0-1160.25.1.el7.x86_64 #1 SMP Wed Apr 28 21:49:45 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
用作测试的目录下的文件
[root@localhost aw]# ls -lS --time-style=long-iso
总用量 24
-rwxr-xr-x 1 root root 286 2021-06-10 15:56 remove.sh
-rw-r--r-- 1 root root   9 2021-06-10 15:55 arg1
-rw-r--r-- 1 root root   9 2021-06-10 15:55 arg2
-rw-r--r-- 1 root root   9 2021-06-10 15:55 arg3
-rw-r--r-- 1 root root   9 2021-06-10 15:56 arg4
-rw-r--r-- 1 root root   9 2021-06-10 16:29 arg5

代码一
#!/bin/bash
ls -lS --time-style=long-iso | awk 'BEGIN {
getline; getline;
name1=$8; size=$5
}
{
name2=$8;
if (size==$5)
{
"md5sum "name1 | getline; csum1=$1;
"md5sum "name2 | getline; csum2=$1;
if ( csum1==csum2 ) { print name1; print name2 }
};
size=$5; name1=name2;
}'
输出结果:
[root@localhost aw]# ./remove.sh
arg1
arg2
arg3
arg4

代码二
#!/bin/bash
ls -lS --time-style=long-iso | awk 'BEGIN {
getline; getline;
name1=$8; size=$5
}
{
name2=$8;
if (size==$5)
{ print name1; print name2 };
size=$5; name1=name2;
}'
输出结果:
[root@localhost aw]# ./remove1.sh
arg1
arg2
arg2
arg3
arg3
arg4
arg4
arg5

请问代码一与代码二输出的结果为何不同?
您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-3-29 19:22 , Processed in 0.062505 second(s), 8 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表