我有个文件叫100.我想判断一下它是否是空的.

我写了一个bash脚本,如下所示,但我无法让它工作.

if [ -s diff.txt ]
then
        touch empty.txt
        rm full.txt
else
        touch full.txt
        rm emtpy.txt
fi

推荐答案

拼写错误令人恼火,不是吗?判断empty的拼写,但也可以try 以下方法:

#!/bin/bash -e

if [ -s diff.txt ]; then
        # The file is not-empty.
        rm -f empty.txt
        touch full.txt
else
        # The file is empty.
        rm -f full.txt
        touch empty.txt
fi

我很喜欢shell脚本,但是它的一个缺点是shell在拼写错误时不能帮助你,而像C++编译器这样的编译器可以帮助你.

顺便注意一下,正如@Matthias所说,我已经交换了empty.txtfull.txt的角色.

Linux相关问答推荐

将UTC字符串日期时间转换为毫秒UTC时间戳

仅使用Find搜索32字符长的目录

/proc/mounts 没有像 /proc/self/mountinfo 这样的源信息

如何在我的 PC 上配置 GitLab 和 GitHub ssh 密钥

inotifywait 可以说文件在另一个进程可以访问之前已关闭吗?

从 curl 命令输出中获取值

如何使用 GDB 和 QEMU 调试 Linux 内核?

并行制作:将 -j8 设置为默认选项

如何在 linux 'screen' 中搜索任何单词

当命令太长时,命令行会自动覆盖

将 bash 脚本添加到路径

Docker Volume 没有挂载任何文件

Mac OS X 中的 ldconfig 等效项?

如何仅打印 hexdump 中的十六进制值,而不打印行号或 ASCII 表?

如何将初始输入通过管道传输到随后将是交互式的进程中?

Postgresql -bash:psql:找不到命令

如何在我的终端中编辑文本文件

Linux 上的最大文件/目录数?

未找到版本CXXABI_1.3.8(...要求)

在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403