根据手册,chdir ,如果可能的话,将工作目录更改为EXPR.
从cmd.exe执行时,此脚本:
my $path = 'C:\\some\\path\\';
print "$path\n";
chdir("$path") or die "fail $!";
Run Code Online (Sandbox Code Playgroud)
结果输出:
C:\some\path\
Run Code Online (Sandbox Code Playgroud)
但是当我返回命令提示符时 - 我仍然在原始目录中.我误解了chdir的目的吗?
我正在迭代一组32位十六进制字符串("DEADBEEF","12345678"等),我试图将它们加在一起形成一个32位校验和.假设变量$temp在下面的示例中加载了一些十六进制字符串.
my $temp;
my $checksum;
for (...)
{
#assume $temp is loaded with a new hex string here
my $tempNum = hex ($temp);
$checksum += $tempNum;
$checksum &= 0xFFFFFFFF;
print printf("checksum: %08X",$checksum);
}
Run Code Online (Sandbox Code Playgroud)
前几个值是"7800798C","44444444"和"44444444".输出是:
校验和:7800798C
校验和:BC44BDD0
校验和:FFFFFFFF
校验和:FFFFFFFF
等等..
你可以看到前两个总结是正确的,然后它似乎饱和.我错过了关于Perl变量大小限制的内容吗?
编辑:这是脚本的实际输出(字符串是十六进制字符串,值是该字符串的十进制转换,校验和是结果输出):
string: 7800798C, value: 2013297036, checksum 7800798C string: 44444444, value: 1145324612, checksum BC44BDD0 string: 44444444, value: 1145324612, checksum FFFFFFFF string: 44444444, value: 1145324612, checksum FFFFFFFF string: 78007980, value: 2013297024, checksum FFFFFFFF string: 44444444, value: 1145324612, checksum FFFFFFFF
我正在努力完成以下荒谬的任务:
我有一个包含一组完全限定文件名的文本文件.我想迭代文件并将每一行追加到一个公共变量,该变量可以传递给命令行工具.例如,该文件可能是:
C:\目录\ test.txt的
C:\ WINDOWS \的test2.txt
C:\ text3.txt
我想把它们分配给一些变量'a',这样:
a = "C:\dir\test.txt C:\WINDOWS\test2.txt C:\text2.txt"
Run Code Online (Sandbox Code Playgroud)
第二个问题是 - 什么是好的批处理文件引用?我在Windows材料和许多本土网站中找到了一些东西,但没有什么特别完整的.
说我有一份清单清单.说三个元素的内部列表大小,如下所示:
['apple', 'fruit', 1.23]
Run Code Online (Sandbox Code Playgroud)
外部列表看起来像这样
data = [['apple', 'fruit', 1.23],
['pear', 'fruit', 2.34],
['lettuce', 'vegetable', 3.45]]
Run Code Online (Sandbox Code Playgroud)
我想迭代外部列表并仅在元素1匹配某个关键字(aka:'fruit')的情况下为临时列表剔除数据.所以,如果我匹配水果,我最终会得到这个:
tempList = [('apple', 1.23), ('pear', 2.34)]
Run Code Online (Sandbox Code Playgroud)
这是实现此目的的一种方法:
tempList = []
for i in data:
if i[1] == 'fruit':
tempList.append(i[0], i[2])
Run Code Online (Sandbox Code Playgroud)
是否有一些'Pythonic'的方法可以用更少的线来做到这一点?
cmd ×2
perl ×2
batch-file ×1
chdir ×1
checksum ×1
concat ×1
hex ×1
list ×1
python ×1
text-files ×1