Linux 删除文件外壳脚本

Linux 删除文件外壳脚本,linux,shell,ksh,Linux,Shell,Ksh,这个问题是我的一项作业。我知道如何创建文件,但我一直在研究如何删除foofoo1 foo2和foo4,而不是foo3。以及如何运行 $ ksh < to_delete.shl. 创建测试文件 touch foo foo1 foo2 foo3 foo4 "foo difficult" "foo with newlines" 编写一个脚本以_delete.sh,它将生成一个脚本来删除foo文件 for f in foo*; do echo "rm \"$f\""; done > t

这个问题是我的一项作业。我知道如何创建文件,但我一直在研究如何删除
foofoo1 foo2
foo4
,而不是
foo3
。以及如何运行

$ ksh <  to_delete.shl.
创建测试文件

touch foo foo1 foo2 foo3 foo4 "foo difficult" "foo
with
newlines"
编写一个脚本
以_delete.sh
,它将生成一个脚本来删除foo文件

for f in foo*; do echo "rm \"$f\""; done > to_delete.sh
编辑该文件并删除正在删除的foo3

vi to_delete.sh <<END
:/"foo3"/d
:wq
END

vi to_delete.sh ksh不是bash。您的文件是*.shl或.sh?我的文件调用它to_delete.shl
rm foo foo1 foo2 foo4
不会删除foo3。恐怕你的问题不清楚和/或不完整。引用你的帖子:写一个shell脚本。。。。这将使用rm命令创建这些文件的文件。我认为使用
rm
命令创建文件是一个相当大的挑战,因此如果您找到了一个很好的解决方案(除了明显的
rm/dev/null 2>foo
),请让我们知道;-)
vi to_delete.sh <<END
:/"foo3"/d
:wq
END