Linux命令操作总结

1、Linux 统计多个文件的合计大小输出精确的字节数

M 单位输出:-cm

G单位输出:-ch

kb单位输出:-ck

```bash
du -cb /path/to/files/* | grep total$ | awk '{print $1}'
&&
du -cb '/path/to/files/a.csv' '/path/to/files/b.csv' '/path/to/files/c.csv'  | grep total$ | awk '{print $1}'
```

在这个命令中,`-b`选项告诉`du`命令以字节为单位显示文件大小。

`grep`命令用于筛选出包含"total"的行,即合计行。

`awk`命令用于提取合计大小并进行输出。

请确保将`/path/to/files/*`替换为您实际的文件路径。

2、 Linux 统计hdfs多文件的合计大小以字节单位输出

以下是一个示例命令来统计HDFS上多个文件的合计大小:

```bash
hdfs dfs -du -s /path/to/files/* | awk '{sum+=$1} END {print sum}'
&&
hdfs dfs -du -s '/path/to/files/a.csv' '/path/to/files/b.csv' '/path/to/files/c.csv' | awk '{sum+=$1} END {print sum}'
```

在这个命令中,`hdfs dfs -du`用于显示HDFS上文件的大小,`-s`选项用于汇总文件大小,`/path/to/files/*`是您要统计的多个文件的路径。

`awk`命令用于提取文件大小并进行求和。

请确保将`/path/to/files/*`替换为您实际的文件路径。

3、Linux 如果出现csv文件内容出现换行符需要替换掉

# linux
# ① 如果出现csv文件内容出现换行符需要替换掉,并另存为一个新文件
shell = rf"""sed -e ':a' -e 'N' -e '$!ba' -e 's/\([^"]\)\n/\1/g'  {remote_file} > {transform_file_path}"""
# ② 如果出现csv文件内容出现换行符需要替换掉,覆盖源文件
shell = rf"""sed -i ':a;N;$!ba;s/\([^"]\)\n/\1/g'  {remote_file}"""

解释:

  • sed -i:这是sed的编辑文件内联选项,它会直接修改文件内容。

  • :a;N;$!ba:这是一个循环,会读取所有行并拼接成一个大的长字符串,直到文件结束。

  • s/\([^"]\)\n/\1/g:在拼接后的字符串上执行全局替换,将前一位为非双引号的换行符替换为空。

4、hdfs dfs -rm -R -skipTrash  hdfs://xxxxx

hdfs dfs -rm -R -skipTrash 是一个用于Hadoop分布式文件系统(HDFS)的命令行操作,用于删除目录和其中的所有文件。-R 或 --recursive 表示递归删除,-skipTrash 表示直接删除文件,不将其移动到垃圾箱中。

 

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值