复制文件
cp /media/img_and_video_data/back_car_come/LH/*.mp4 .
进入需要复制到的文件夹目录下,cp 需要复制的文件路径 .
c++引用外部库
编译生成lib文件
#pragma comment(lib,"json_vc71_libmtd.lib")
导入头文件.h
Linux加 ; 多命令运行
cd /;cd ~
cd Desktop ; ls
进入桌面打印文件列表
修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,其他用户只有读的权限
chmod u=rwx,g=rw,o=r aaa.txt
r w x:4 2 1
user:421
group:421
other:421
chmod 764 aaa.txt
useradd jake 创建名为 jake 的用户
-d 指定用户的家目录
-g 指定用户组
-G 指定用户的附加组
-u 指定用户的 UID 值
-p 创建密码
useradd aaa 创建 aaa 用户
userdel -r aaa 删除用户并且删除家目录
passwd aaa 给用户设置一个登录密码
su - username 切换用户
opencv版本查看
pkg-config --modversion opencv
使用opencv编译
sudo g++ main.cpp -o main `pkg-config --cflags --libs opencv`
df -hl:查看磁盘剩余空间
df -h:查看每个根路径的分区大小
du -sh [目录名]:返回该目录的大小
du -sm [文件夹]:返回该文件夹总M数
du -h [目录名]:查看指定文件夹下的所有文件大小(包含子文件夹)
1、top命令
2、free
3、cat /proc/meminfo
4、cat /proc/cpuinfo
5、du -sh *
6、 查看CPU个数
cat /proc/cpuinfo | grep "physical id" | uniq | wc -l
7、查看CPU核数
cat /proc/cpuinfo | grep "cpu cores" | uniq
8、查看CPU型号
cat /proc/cpuinfo | grep 'model name' |uniq
远程跨主机文件
```python
scp -r cxk@111.111.111.111:/vision/lane_detect/train_data/2021.04.26/lane_in_center_1/* ./lane_in_center_1
scp -r cxk@111.111.111.111:/vision/lane_detect/train_data/2021.04.26/lane_in_center_2_xml/* ./lane_in_center_2_xml
find cxk@111.111.111.111:/vision/img_and_video_data/img_data/PCW_data/all_img/ -name "*.jpg" -exec scp -r {} ./all_img \;
find all_img -name "*.jpg" -exec sshpass -p password scp -r {} dataset@111.111.111.111:/data/dataset/person_data/all_img/ \;
scp -r cxk@111.111.111.111:/vision/img_and_video_data/img_data/PCW_data/all_img/* ./all_img
scp -r cxk@111.111.111.111:/vision/img_and_video_data/img_data/PCW_data/car_xml/* ./car_xml
scp -r dataset@111.111.111.111:/dataset/person_data/all_img/* ./img
输入cxk的密码
***********
mv
其中
111.111.111.111:远程主机
cxk:远程主机的用户名
/vision/lane_detect/train_data/2021.04.26/lane_in_center_1/*:要复制远程主机的文件路径
./lane_in_center_1:要粘贴的目录主机的文件路径
1.CPU信息查看
#实时查看cpu频率
watch -n.1 "cat /proc/cpuinfo | grep \"^[c]pu MHz\""
#查看cpu线程数(逻辑核数)
lscpu
或者
getconf _NPROCESSORS_ONLN # getconf -a 可以查看系统所有信息
或者
egrep "^processor" /proc/cpuinfo
egrep "^processor" /proc/cpuinfo | wc -l # 直接查看数量
#查看cpu型号
cat /proc/cpuinfo | grep -i "model name" | uniq
2.查看系统分区、文件夹及其大小
#系统分区信息
df -h
#查看文件夹大小
du -h --max-depth=1
或者
du -h -d 1
上面的命令如果想具体到比如用MB或者GB 表示的时候,将 -h 替换成 --block-size=1M , --block-size=1G即可。
3.清空回收站文件夹
rm -rf $HOME/.local/share/Trash/files/*
4.实时查看内存
free -m -h 或者
watch -n 5 free -m -h
补充:watch 与 管道符号一起用,主要是加引号 ’ ’
watch -n 5 'free -m -h | grep -i swap'
5.手动释放内存(上条命令中显示的 buff/cache)
sudo sh -c 'echo 1 > /proc/sys/vm/drop_caches'
sudo sh -c 'echo 2 > /proc/sys/vm/drop_caches'
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
6.挂载与读取硬盘,具体参考博文
a.查找硬盘
sudo fdisk -l
b.新建文件夹
cd $HOME
mkdir tempdir
c.查看原硬盘格式
df -T
d.挂载硬盘
mount -t ext4 /dev/sdb1 $HOME/data1
e.查看新挂载的硬盘
df -h
7.mkdir 创建多级文件夹
mkdir -p aa/bb/cc/dd/ee
或者
mkdir -pv aa/bb/cc/dd/ee
多加一个v意思是在控制端会输出你创建的文件夹的路径.
-p, --parents no error if existing, make parent directories as needed
-v, --verbose print a message for each created directory
8.查看GLIBC版本
ldd --version
9.查看系统版本信息
lsb_release -a
#查看内核信息
uname -a
10.查看显卡信息
lspci | grep -i vga
#更详细的查看厂商的信息
lspci -vnn | grep VGA -A 12
11.查看当前目录的绝对路径
pwd
12.用户信息查看
whoami ## 查看当前用户名
hostname ##当前机器名称,修改位置 /etc/hostname
pwd #当前路径
last ## 查看用户登录记录
lastlog ##最近所有用户登录记录
13.查看输入命令的历史记录
cat ~/.bash_history ## 常用
#或者
history
参考
14.查看IP地址
ifconfig ## windows 下为 ipconfig /all
##这个命令如果没有的话,安装命令为
sudo apt-get install net-tools
- ubuntu 创建宽带连接
#通常通过 /usr/share/application 目录下的network应该就可以创建宽带连接
#但是也可以通过命令行创建
sudo pppoeconf
#然后默认设置,填写好账户和密码即可联网,注意设置断网自动重新连接
#如果掉了,也可以手动连接
sudo pon dsl-provider # 启动
poff # 关闭
个人建议还是使用/usr/share/application 目录下的network创建宽带连接,这样创建的连接相对比较稳定,用命令创建的不是很稳定
16.查看正在工作的网卡
#可以先用
ifconfig
#查看有哪些网卡
#再用
sudo mii-tool eth0
#查看哪个网卡正在工作
17.内存,硬盘,主板型号查询
sudo dmidecode -t memory // 内存信息 更具体的 sudo dmidecode -t memory | grep -i size
sudo hdparm -i /dev/sda // 硬盘型号 sudo hdparm -i /dev/sda | grep -i model
sudo dmidecode | more // 主板型号 更具体的可以用 sudo dmidecode | grep -i "product name"
####其他
##读取速度
hdparm -Tt /dev/sda1
18.三种方法重启网络连接
第一种方法: networking
sudo service networking restart
或者
/etc/init.d/networking restart
第二种方法:ifdown up
ifdown eth0
ifup eth0
第三种方法:ifconfig
ifconfig eth0 down
ifconfig eth0 up
19.查看硬盘实时读写速度
sudo iotop
如果没有这个命令,用apt 安装一下即可
sudo apt-get install iotop
20.查看已经安装的软件包
apt list --installed | grep -i 软件(包)名
#
dpkg -l | grep -i 软件(包)名
21.查看文件及文件夹数量
查看当前目录下的文件数量(不包含子目录中的文件)
ls -l | grep "^-" | wc -l
查看当前目录下的文件数量(包含子目录中的文件) 注意:R,代表子目录
ls -lR | grep "^-" | wc -l
查看当前目录下的文件夹目录个数(不包含子目录中的目录),同上述理,如果需要查看子目录的,加上R
ls -l | grep "^d" | wc -l
#如果是指定文件目录的,只需要在ls -l 后面加上目录加即可
ls -l traget_dir | grep "^-" | wc -l
参考:https://www.cnblogs.com/dttdx/p/12605895.html
- cp命令进阶
#向多个目录拷贝同一个文件,
echo /target_dir1 /target_dir2 /target_dir3 | xargs -n 1 cp -v /source_dir/source_file
#多个文件向同一个目录下拷贝,可以使用相对路径
cp /dir1/source_file1 /dir2/source_file2 /dir3/source_file3 /target_dir
#或者写成
cp {/dir1/source_file1,/dir2/source_file2 /dir3/source_file3} /target_dir
#如果dir1 和 dir2相同,那么可以进一步写成
cp /dir/{source_file1,source_file2,source_file3} /target_dir
#如果source_file本身名字上有规律,如连续的自然数等,可以使用 [],如
cp /dir/source_file[1-3] /target_dir
#如果不连续的话,比如只想cp file1 和file3
cp /dir/source_file[1,3] /target_dir
#最后向多个目录,复制多个文件
echo /target_dir1 /target_dir2 /target_dir3 | xargs -n 1 cp -v /source_dir/source_file[1-3]
23.查看进程所在绝对路径
#方法一
top 命令后 按 c键 查看,但是要求的是执行软件的时候,使用的是绝对路径
#方法二
ll /proc/pid
#方法三(与方法二类似,用ps打印pid,不是通过top命令获取pid)
ps -ef | grep xxx
ll /proc/xxx的pid
24.显卡限制功耗上限
sudo nvidia-smi -pl 200 # 功耗限制在200w
#如果是多块gpu 加上 -i 指定哪几块,如
sudo nvidia-smi -i 0,1 -pl 200 # 0号和1号显卡的功率限制到200w
25.快速返回$HOME目录与返回上一次目录
#通常办法是
cd ~ / cd $HOME
#其实直接输入cd 回车就回到了主目录
cd
#万一要是手误打错了,直接返回主目录,想要回去的话
cd -
nm XXX.a
上面的命令可列出.o .a .so中定义的函数,全局变量等等。
Linux端查看.a/.so库文件信息,包含架构等等
readelf -h XXX.a
统计文件个数
find . -name "*.jpg" | wc -l
find . -name "*.[c|h]" |wc -l
移動固定后缀文件
find . -type f -name "*.jpg" -exec mv {} /test/ \;