小编yot*_*erg的帖子

计算shell中文件的大小

我正在尝试计算仅使用shell匹配文件名模式的所有文件(在目录树中)的总大小(以字节为单位).这是我到目前为止:

find -name*.undo -exec stat -c%s {} \; | awk'{total + = $ 1} END {print total}'

有更简单的方法吗?我觉得应该有一个简单的du或find开关为我做这个,但我找不到一个.

为了清楚起见,我希望在目录树下的任何位置匹配模式的文件总数

du -bs*.undo

将无法正常工作,因为它只匹配当前目录中的文件.

linux shell

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

幂等PostgreSQL DDL脚本

我正在寻找一种以幂等方式编写postgreSQL架构更改脚本的方法.

在MSSQL中,我可以这样做:

if(not exists(select * from information_schema.columns where table_name = 'x' and column_name = 'y'))
begin
    alter table x add y int
end
go
Run Code Online (Sandbox Code Playgroud)

PostgreSQL似乎不允许ad-hoc pl/pgsql与MSSQL使用T-SQL的方式相同,所以我不能在SQL脚本中使用控制结构并使用psql -f x.sql运行它.

我知道如果对象已经存在,PostgreSQL将抛出一个错误,但我不想忽略错误.

我可以使用一些模式版本控制技术,如dbdeploy,但我真的很喜欢通过psql运行一组文件的简单性,而不会产生任何不必要的副作用.

这可能吗?

谢谢,马克

database postgresql plpgsql

6
推荐指数
2
解决办法
3336
查看次数

标签 统计

database ×1

linux ×1

plpgsql ×1

postgresql ×1

shell ×1