我有 4 个文件,假设 a、b、c、d 其中一个是零字节文件。我想要一个可以识别哪个是零字节文件的脚本和一个将此文件传输到“存档”中的脚本。
谢谢。
答案1
如果你问的是 Linux 或 BSD,情况就会有所不同。Linux 和 BSD 上有大量可用的脚本语言,从 REXX 到 TENEX C Shell 再到 Python。
但是你具体来说而是询问有关 UNIX 的问题。
UNIX 比 Linux 和 BSD 以及几种脚本语言都要古老,而且你没有说你问的是哪个版本的 UNIX。因此,为了安全起见,我选择了一种 UNIX 脚本语言,即使在第六版 UNIX 上你也应该能够使用它:汤普森壳牌脚本语言。
这是您的脚本。按照 20 世纪 70 年代 UNIX 的传统,它功能强大、沉默寡言、在极端情况下很棘手,并且没有超过 7 个字符的符号。严格按照 Thompson 传统,在 的末尾没有不必要的字母“e” archiv
。我对 GNUistas 做出了一个让步:增加了一个--help
选项。如果您想在 BSD 上运行该脚本,它确实可以很好地运行,您当然可以使用 消除这种 GNUism head -11
。几乎不用说,我已经包含了您指定的错误,即只移动一个零长度文件。尽情享受吧。
/bin/sh6 的 #!/bin/sh6 :大号 如果!{fd2-f/dev/null转到X$1}转到T :T :<$1'' 如果 -s $1 转到 F 转移 转到 L : F mv $1 档案/$1 fd2 -f /dev/null 转到 Y :X-帮助 echo 用法:$0 个文件……