小编Par*_*aia的帖子

如何删除shell上超过x秒(不是几天,几小时或几分钟)的文件?

关于如何在linux上删除超过x分钟/小时/天的文件有很多问题,但没有人能达到秒分辨率.

我找到了这个解决方案:

for file in `ls -ltr --time-style=+%s | awk '{now=systime(); del_time=now-30; if($6<del_time && $5=="0") print $7}'` ;do
   rm -f $file >/dev/null 2>&1
done
Run Code Online (Sandbox Code Playgroud)

但是systime()不存在awk

"函数systime从未定义过"

但是gawk我无法在Ubuntu 13.xx上安装(并且真的不想安装任何额外的软件).

bash awk

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

如何使用多个res.srcDirs并使用gradle覆盖一些资源

我想基于不同的productFlavor构建我的应用程序的不同版本,但需要一定程度的灵活性,这是我无法实现的.

这是我的文件夹结构:

+src
  +main
    +java
    +res
  +base
    +java
    +res
  +custom1
    +java
    +res
  +custom2
    +res
Run Code Online (Sandbox Code Playgroud)

公共代码在main(服务)上,基础ui在base(活动)上.然后定义新UI的应用程序的自定义版本在custom1(新活动)上.这个运行正常.但我需要使用基础 ui的另一个版本的应用程序(custom2),但需要更改一些res(图标,字符串或颜色).

我在build.gradle文件中尝试的是:

android{
    ...
  productFlavors {
    base {
      ...
    }
    custom1 {
      ...
    }
    custom2 {
      ...
    }
  }

  sourceSets{
    custom2{
      java.srcDirs = ['src/base/java']
      res.srcDirs = ['src/custom2/res', 'src/base/res']
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

要指定CUSTOM2将使用源代码和资源基地和资源CUSTOM2.

问题是我得到了:

Error: Duplicate resources: <project_path>/src/base/res/values-es/strings.xml:string-en/app_name, <project_path>/src/custom2/res/values-es/strings.xml:string-en/app_name
Run Code Online (Sandbox Code Playgroud)

由于app_name定义上都基地CUSTOM2,但我的目标是覆盖资源的定义在基地与的个CUSTOM2 …

android gradle android-studio build.gradle android-productflavors

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