小编Nei*_*ang的帖子

如何从今天开始计算一周前的日期

我想用一种特定的格式从一天前开始计算一周前的日期并将其放入变量中.例如,今天是Nov 21st. 2014,我想打印出来:上周是2014-11-14.

我知道我们可以使用Date::Calc模块,但我不知道如何.

perl

5
推荐指数
1
解决办法
3070
查看次数

BASH语法检查调试模式故障?

我们可以bash -n script.sh用来验证shell脚本的语法.但是,当我尝试测试此函数时,我注意到此选项无法找到所有语法错误.

例如:

root@ubuntu:~/testenv# cat test 
#!/bin/bash
SEND=1
if [ "$SEND" -eq 0 ]
        echo no
fi
Run Code Online (Sandbox Code Playgroud)

现在,让我们测试脚本:

root@ubuntu:~/testenv# bash -n test 
test: line 5: syntax error near unexpected token `fi'
test: line 5: `fi'
Run Code Online (Sandbox Code Playgroud)

它工作正常.但是,如果我只删除其中一个括号:

root@ubuntu:~/testenv# cat test     
#!/bin/bash
SEND=1
if [ "$SEND" -eq 0 
then 
        echo no
fi
root@ubuntu:~/testenv# bash -n test 
root@ubuntu:~/testenv# 
Run Code Online (Sandbox Code Playgroud)

没啥事儿!

我还检查了bash的手册页,它描述了"-n"是:

 -n               Read  commands  but  do not execute them.  This may be used to check a
                  shell script for  syntax  errors. …
Run Code Online (Sandbox Code Playgroud)

linux bash shell

3
推荐指数
1
解决办法
65
查看次数

在Perl中自动增量功能发生了什么?

我在Perl学习中遇到了一个问题.

$a = "Z9"; print ++$a;
Run Code Online (Sandbox Code Playgroud)

打印出来AA0.这很容易理解,增加1的9得到10,Z增加1获得AA.就像99 + 1.但是,如果我翻过Z和9,会发生什么:

$a = "9Z"; print ++$a;
Run Code Online (Sandbox Code Playgroud)

这会得到10.为什么字母Z消失了?它去了哪里?

此致,尼尔

perl

1
推荐指数
1
解决办法
86
查看次数

标签 统计

perl ×2

bash ×1

linux ×1

shell ×1