芯片验证中linux用法小结(8)
时间:2023-12-04 21:52来源:路科验证 作者:ictest8_edit 点击:
次
8. cd命令[感谢关注微信公众号《芯片验证日记》]
cd ~:返回home目录
cd -:返回前一目录
cd ../../ :返回上上级目录
9. mkdir命令
mkdir -p
mkdir -p: 可以一次性创建多重目录,p=parents
mkdir -p /home/icer/my_work/mydir
mkdir -m
mkdir -m=mkdir + chmod
mkdir -m 755 ~/auto_run.sh
10. touch
touch [文件名]
11. chmod
chmod 755 ~/my_work/foo.txt
12. chown
必须使用root权限操作,将文件~/eda/license.dat的所有者和所属组均修改为icer
chown icer:icer ~/eda/license.dat
13. cp命令
cp [选项] [源] [目标]
cp -rf abc mnp
cp -rf *.png *.txt *.sv /home/icer/
cp -rf /user/source/ /home/icer/
14. mv命令
mv <-f | -i> [文件1] [文件2]
mv <-f | -i> [目录1] [目录2]
mv <-f | -i> [文件列表] [目录]
-f :如果目标文件已存在,不提示直接覆盖已有文件。
-i :如果目标文件有同名,则先询问是否覆盖已有文件。
mv abc yyy
mv /user/source/ /home/icer/des/
mv -i ./nic/*.sv ./flist
15. rm命令
rm <选项> [文件列表]
选项说明:
-r :recursion表示递归,将目录及以下文件逐层删除。
-f :force,
16. wc文件内容统计命令
wc <选项> 文件列表
统计指定文件中的字节数、字数、行数。
-c : character, 统计字节数
-l :line,统计行数
-w :word,统计字数
更多内容请参考,本公众号另外一篇文章
查看整个项目的代码行数
17. find命令 [感谢关注微信公众号《芯片验证日记》]
find[目录列表] [匹配标准]
find . -name “*file*”
17.1按名称搜索文件
普通用法
find . -name test.txt
查找所有格式为 pdf 的书籍,使用正则表达式:
find ./icer/books -name "*.pdf"
默认情况下,find 命令会搜索常规文件,但最好进行指定(-type f)以使所有内容更清晰:
find ./icer/books -type f -name "*.pdf"
17.2查找不同类型的文件
通过指定 -type 选项来搜索其他类型的文件,例如搜索目录:
find . -type d -name "icer*"
#或者符号链接:
find . -type l -name "icer*"
17.3 按指定的时间戳查找文件
搜索访问access时间查过7天的
find . -type f -atime +7
查找修改modify时间正好是 5 天前的文件,请不要包含 +,因为它的意思是“大于”。
find . -type f -mtime 5
搜索更改change时间在 5~10 天前的文件:
find . -type f -ctime +5 -ctime -10
17.4 按大小查找文件
查找大小为 10 MB ~ 1 GB 的文件:
find . -type f -size +10M -size -1G
17.5 按权限查找文件
搜索所有具有 777 权限的文件,这意味着一个文件对其持有者、组和所有用户具有所有的读、写和可执行权限。
find . -type f -perm 777
17.6 按用户名查找文件
查找所有属于icer的文件:
find -type f -user icer
17.7 在找到文件后执行命令(-exec)
find . -type f -atime +365 -exec rm -rf {} \;
上述命令在 -exec 选项后是 rm -rf,其用于删除文件。{} 是用于查找结果的占位符。
注意:占位符{} 非常重要,尤其是在您想删除文件时。因为,如果您不使用它,该命令将对所有文件执行(而不是您刚刚通过find 命令找到的文件)。做一个尝试,在终端上执行以下两个命令,并检查它们的结果有何不同:
#一个使用占位符:
find . -type f -atime +5 -exec ls {} \;
#另一个不使用占位符:
find . -type f -atime +5 -exec ls \;
-exec 选项后面的命令必须以分号(;)结束。众所周知,转义字符用于去除单个字符的特殊含义。在 Linux 中,反斜杠 \ 用作转义字符。所以我们将它用于分号字符。
17.8常规处理动作 [感谢关注微信公众号《芯片验证日记》]
17.8.1 -print
默认的处理动作,显示至屏幕
find / -name httpd.conf -print
17.8.2 -ls
类似于对查找到的文件执行 "ls -l"命令
find / -type f -size +1G -ls
17.8.3 -delete
删除查找到的文件
find ~ -type d -empty -delete
find ./ -type f -delete
# 删除大与100M,时间在7天前的文件
find /test -size +100M -mtime +7 -delete
17.8.4 -fls /path/to/somefile
查找到的所有文件的长格式信息保存至指定文件中。
|
------分隔线----------------------------