关于如何在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上安装(并且真的不想安装任何额外的软件).
我想基于不同的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