写一个递归删除某个目录下前缀名为core的文件的cshell脚本
时间: 2023-04-06 20:02:35 浏览: 74
我可以回答这个问题。以下是一个递归删除某个目录下前缀名为core的文件的cshell脚本:
```
#!/bin/csh
set dir = $1
cd $dir
foreach file (*)
if (-d $file) then
$0 $file
else if ("$file" =~ "core*") then
rm $file
endif
end
cd ..
```
你可以将这个脚本保存为一个文件,例如delete_core_files.csh,然后在终端中运行它,例如:
```
./delete_core_files.csh /path/to/directory
```
其中,/path/to/directory是你想要删除core文件的目录的路径。请注意,这个脚本将递归地删除所有子目录中的core文件。
相关问题
写一个递归删除用命令行参数输入的目录下所有前缀为core的文件的csh脚本
我可以回答这个问题。以下是一个递归删除用命令行参数输入的目录下所有前缀为core的文件的csh脚本:
```
#!/bin/csh
if ($#argv != 1) then
echo "Usage: $0 directory"
exit 1
endif
set directory = $1
foreach file (`find $directory -name "core*"`)
rm $file
end
```
这个脚本首先检查命令行参数是否正确,然后使用find命令查找所有前缀为core的文件,并使用rm命令删除它们。
创建一个shell脚本,统计当前目录下文件的个数怎么写
你可以创建一个shell脚本来统计当前目录下文件的个数。以下是具体的步骤:
1. 打开终端,使用文本编辑器(如vi、nano等)创建一个新的shell脚本文件,例如 `count_files.sh`。
2. 在脚本文件中添加以下内容:
```
#!/bin/bash
count=$(ls -1 | wc -l)
echo "当前目录下文件的个数为: $count"
```
这个脚本会使用 `ls` 命令来列出当前目录下的所有文件,然后使用 `wc` 命令来统计文件的个数,并把结果存储在变量 `count` 中。最后,脚本会输出文件的个数。
3. 保存脚本文件并退出文本编辑器。
4. 在终端中使用以下命令来给脚本文件添加执行权限:
```
chmod +x count_files.sh
```
这个命令会把 `count_files.sh` 文件设置为可执行。
5. 在终端中运行脚本文件:
```
./count_files.sh
```
这会执行脚本文件并输出当前目录下文件的个数。
请注意,这个脚本只会统计目录下的文件数,不包括子目录中的文件数。如果需要统计子目录中的文件数,可以使用递归方法或者其他统计方法。