芯片验证中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
查找到的所有文件的长格式信息保存至指定文件中。 
 
  
 
  
	
      
         | 
    
   
   
  
  
  
  
  
  
  
  
  
  
   ------分隔线----------------------------