IC设计中常用的Linux命令
专栏:ExASIC April 6, 2024, 11:05 p.m. 29 阅读
今天来介绍一下IC设计中常用的Linux命令

一个合格ICer,必需要熟练掌握常用的Linux命令。今天来介绍一下IC设计中常用的Linux命令。(管理员相关的命令后面另写一篇文章。)

Linux常见命令一览

文件及目录操作
cd pwd ls tree mkdir touch cp rm mv ln cat more head tail

查找
echo env which find grep

压缩和解压缩
tar

查看系统状态
date top free kill ps who w df du stat chmod

详细介绍

cd 改变工作目录

cd prj
cd /home/exasic/prj
cd ~prj

pwd #查看当前所在工作路径

pwd

ls 列出当前目录的子目录及文件

ls -1
ls -l
ls -lh
ls -R 
ls -a
ls -A
ls -ltr
alias ls 'ls -h --color=tty'

Tips:

#列出子目录
ls -l | grep '^d' | awk '{print $9}'

tree 列出子目录和文件树型结构

tree .

Tips:

#列出两层子目录结构
tree -dfi -L 2

mkdir 新建目录

mkdir xxx
mkdir -p xxx/yyy/zzz

touch 新建文件或修改文件访问(修改)时间

touch xxx
touch -a xxx
touch -m xxx

cp 复制文件

cp a.v b.v
cp a.v c
alias cp 'cp -i'

mv 移动或重命令

mv a.v b.v
mv a.v c
alias mv 'mv -i'

rm 删除目录或文件

rm a.v
rm -r c
alias rm 'rm -i'

Tips: 在工作中如何避免误删(误覆盖)文件

  • set rmstar

  • set noclobber

  • rm -i, mv -i, cp -i操作确认

  • 编辑器的自动定时备份

  • 用版本管理工具管理源代码

  • 用mv代替rm

  • 异地备份

ln 创建链接

ln -s xxx/a.v a.v

cat 显示文件内容

cat a.v | more

more 分页显示文件内容

more a.v

head, tail 显示文件的开头或末尾n行

head -n 1 a.v
tail -n 5 a.v

echo打印字符串或变量值

echo "I'am an ICer"
echo $PATH

env 打印当前所有的环境变量

env

which 查看命令所在软件或目录

which irun

find 查找文件

find . -name "*.v"
find . -mtime -10 -name "*.log"
find . -path "*rtl*"

Tips:

#合并所有的.v文件
find . -name "*.v" | xargs cat > all.v

#删除所有的*~文件
find . -name "*~" | xargs rm -f

#删除所有波形文件
find . -name "*.fsdb" -exec rm {} \;

grep 查找文件内容

grep "FAIL" *.log
grep -r "DLY2" .

tar 压缩和解压缩

tar -zcvf rtl.tar.gz rtl
tar -zxvf rtl.tar.gz

Tips:

#选项的-可以省略
tar zxvf rtl.tar.gz

date 显示当前日期或时间

date +%s
date +%F' '%T

top 显示当前CPU、内存、进程等信息

top

Tips: top的子命令

  • u 按用户筛选

  • o 其它列筛选(可筛选多次),如COMMAND=verdi

  • = 按等于号清除筛选

  • k kill进程

  • c 进程显示详细命令路径

  • 1 详细CPU状态

  • f 设置显示列,及顺序

  • q 退出

注:不同版本的操作系统的Top子命令(如o、f、=等)有些差异,可按h/?查看帮助。

free 查看内存状态

free

内存使用率=used / total。例如,下面的使用率为2153048/3880180=55%。
其中,buffer表示尚未写到硬盘的数据,cache表示从硬盘读出来的数据,这两项由操作系统管理。

$ free
              total        used        free      shared  buff/cache   available
Mem:        3880180     2153048      164196      184148     1562936     1160220
Swap:       4063228        1024     4062204

kill 杀死进程

kill -9 pid
kill -9 -1

ps 查看进程

ps -ef | grep "user"
ps -ef | grep "vcs"

who, w 查看用户登陆情况

who
w

df 查看硬盘使用情况

df -h

du 统计目录或文件大小

du -s /home/user
du -s *

stat 查看文件的详细信息

stat a.v

chmod 修改目录或文件的权限

chmod -R 600 prj
chmod -R 755 sim.py
chmod +x sim.py
chmod -x *.v
感谢阅读,更多文章点击这里:【专栏:ExASIC】