Good afternoon. I'm learning perl, and confused by a simple code which prints :
Arch bits :
OS Arch x86_64 : i686
OS Arch bits 1 : 64
OS Arch bits: 64
Now using for/if
OS Arch x86_64 : i686
OS Arch bits 1 : 64
instead of :
Arch bits :
OS Arch x86_64 : i686
OS Arch bits 3 : 32
OS Arch bits: 32
Now using for/if
OS Arch x86_64 : i686
OS Arch bits 3 : 32
Code is as follow :
#!/usr/bin/perl
print "Arch bits : $os_arch_bits\n";
#$os_arch = `uname -m`;
#$os_arch =~ s/\n//g;
#$os_arch =~ s/\r//g;
$os_arch = 'i686';
if ($os_arch == 'x86_64') {
print "OS Arch x86_64 : $os_arch\n";
$os_arch_bits = '64';
print "OS Arch bits 1 : $os_arch_bits\n";
}
elsif ($os_arch == 'i386') {
print "OS Arch i386 : $os_arch\n";
$os_arch_bits = '32';
print "OS Arch bits 2 : $os_arch_bits\n";
}
elsif ($os_arch == 'i686') {
print "OS Arch 64 : $os_arch\n";
$os_arch_bits = '32';
print "OS Arch bits 3 : $os_arch_bits\n";
}
else {
print "OS Arch 64 : $os_arch\n";
$os_arch_bits = 'XX';
print "OS Arch bits 4 : $os_arch_bits\n";
}
print "OS Arch bits: $os_arch_bits\n";
print "Now using for/if\n";
for ($os_arch) {
if ("x86_64") {
print "OS Arch x86_64 : $os_arch\n";
$os_arch_bits = '64';
print "OS Arch bits 1 : $os_arch_bits\n";
}
elsif ("i386") {
print "OS Arch i386 : $os_arch\n";
$os_arch_bits = '32';
print "OS Arch bits 2 : $os_arch_bits\n";
}
elsif ("i686") {
print "OS Arch 64 : $os_arch\n";
$os_arch_bits = '32';
print "OS Arch bits 3 : $os_arch_bits\n";
}
else {
print "OS Arch 64 : $os_arch\n";
$os_arch_bits = 'XX';
print "OS Arch bits 4 : $os_arch_bits\n";
}
}
Help will be appreciated :)