mkdir -p p怎么记
时间: 2023-06-25 18:07:01 浏览: 43
这个命令是用来创建目录的,其中 `-p` 参数可以帮助你创建多层级嵌套的目录。可以这样记忆:`-p` 代表递归创建目录,就像一棵树一层层地往下创建。例如,如果你要创建 `/home/user/documents` 这个目录,可以使用命令 `mkdir -p /home/user/documents`。
相关问题
QNX_LOG_DIR="/qnxlog" TOP_DIR="$QNX_LOG_DIR/top" HOGS_DIR="$QNX_LOG_DIR/hogs" PIDIN_A_DIR="$QNX_LOG_DIR/pidin" # 创建输出目录,如果不存在 mkdir -p $TOP_DIR mkdir -p $HOGS_DIR mkdir -p $PIDIN_A_DIR while true do top -b -i 1 >> $TOP_DIR/top.log hogs -i 1 >> $HOGS_DIR/hogs.log pidin a >> $PIDIN_A_DIR/pidin.log sleep 10 done我想再此基础上,将每次文件名修改为启动脚本的次数,当每个文件夹的数量超过2时,删除时间早的文件
可以使用一个计数器来记录脚本启动的次数,并将其作为文件名的一部分。同时,可以在循环中添加删除旧文件的逻辑,以保持文件夹中的文件数量不超过 2。具体实现可以参考以下代码:
```
QNX_LOG_DIR="/qnxlog"
TOP_DIR="$QNX_LOG_DIR/top"
HOGS_DIR="$QNX_LOG_DIR/hogs"
PIDIN_A_DIR="$QNX_LOG_DIR/pidin"
# 创建输出目录,如果不存在
mkdir -p $TOP_DIR $HOGS_DIR $PIDIN_A_DIR
# 设置计数器初始值为1
count=1
while true; do
# 将计数器的值作为文件名的一部分
top -b -i 1 >> $TOP_DIR/top-$count.log
hogs -i 1 >> $HOGS_DIR/hogs-$count.log
pidin a >> $PIDIN_A_DIR/pidin-$count.log
# 计数器自增
((count++))
# 删除旧文件,保持文件夹中的文件数量不超过 2
if [ $(ls $TOP_DIR | wc -l) -gt 2 ]; then
# 删除时间最早的文件
rm $TOP_DIR/$(ls -t $TOP_DIR | tail -1)
fi
if [ $(ls $HOGS_DIR | wc -l) -gt 2 ]; then
# 删除时间最早的文件
rm $HOGS_DIR/$(ls -t $HOGS_DIR | tail -1)
fi
if [ $(ls $PIDIN_A_DIR | wc -l) -gt 2 ]; then
# 删除时间最早的文件
rm $PIDIN_A_DIR/$(ls -t $PIDIN_A_DIR | tail -1)
fi
# 等待 10 秒
sleep 10
done
```
这样,每次脚本启动时,计数器会自增,并将计数器的值作为文件名的一部分。例如,第一次启动时的文件名为 top-1.log,第二次启动时的文件名为 top-2.log,以此类推。在循环中,会检查文件夹中的文件数量是否超过 2,如果超过则删除时间最早的文件。
#!/bin/bash # this is check directory # by author rivers on 2021-9.27 if [ ! -d /data/rivers -a ! -d /tmp/rivers ];then mkdir -p /data/rivers f i
这段脚本是一个检查目录是否存在的脚本,并在目录不存在时创建目录。让我逐行解释一下:
1. `#!/bin/bash`:这是一个shebang,指定了脚本要使用的shell解释器,这里是bash。
2. `# this is check directory`:这是一个注释,用于说明脚本的作用。
3. `# by author rivers on 2021-9.27`:这是作者添加的注释,用于记录脚本的作者和编写日期。
4. `if [ ! -d /data/rivers -a ! -d /tmp/rivers ];then`:这是一个条件语句,判断/data/rivers和/tmp/rivers两个目录是否都不存在。
5. `mkdir -p /data/rivers f i`:如果两个目录都不存在,则执行下面的命令。这一行命令使用mkdir命令创建目录。选项-p表示递归地创建目录,即如果上层目录不存在,则同时创建上层目录。然后,指定了要创建的两个目录:/data/rivers和f i(这里可能有一个笔误,应该是/tmp/rivers)。
这个脚本的作用是检查/data/rivers和/tmp/rivers两个目录是否都不存在。如果两个目录都不存在,则使用mkdir命令创建这两个目录。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)