手册&指南

Linux操作相关

##基本操作
打包
tar -cvf xx.tar xxx
tar zcvf xx.tar.gz xx
解压
tar zxvf xx.tar.gz
tar xvf xx.tar
tar jxvf xx.tar.bz2
bzip2 -d xx.bz2
创建目录xxmkdir xx
创建目录a及以下子目录b:mkdir -p a/b
创建xx文件:touch xx
查看xx文件:cat xx
查看xx文件:less xx(内容多于一屏时,j/k向下/上翻滚)
显示绝对路径pwd
删除空目录rmdir
删除xx文件rm xx
强制删除目录a:rm -rf a
删除目录a:rm -r a
删除父目录a中所有的空子目录cd a; rmdir
复制文件a到文件bcp a b
复制目录a为目录bcp -r a/ b/
从指定文件搜索指定文件grep '指定内容' ./ -R
下载文件到xx目录axel http://... -o xx
给文件a.c加执行权限chmod +x a.c
运行脚本xx.sh:sh xx.sh
使.bashrc生效source ~/.bashrc
查看opencv版本pkg-config --modversion opencv
查看opencv安装位置pkg-config -cflags opencv
查找grep -n -H -R "you want to search " *
查看文件夹大小du -sh
查看文件夹大小并排序du -h /home/* | sort
查看文件夹大小du -h --max-depth=1 ./
查看磁盘的使用情况df -h
查看权限ls -l filaname
查看GPU使用率nvidia-smi
查看CPU使用率top
查看文件夹内文件个数ls -l | grep '^-' | wc -l
查看文件夹内目录个数ls -l | grep '^d' | wc -l
查看文件行数wc -l filename
批量更改图片尺寸mogrify -resize 224x224 -format jpg *

查看网络设置ifconfig
查看操作系统uname -a
查看ubuntu版本lsb_release -a
查看操作系统位数:getconf LONG_BIT
查看gcc版本ls /usr/bin/gcc*或gcc -v
查看磁盘使用情况baobab
添加用户sudo adduser username
删除用户: sudo userdel -r username
添加sudo权限sudo vi /etc/sudoers

显示终端上所有进程ps -a
查看进程所有者及其他详细信息ps -u
杀掉某进程kill -SIGKILL 进程号
查看使用apt-get的进程ps -aux | grep 'apt-get'
进程暂停kill -STOP pid
进程重启kill -CONT pid

替换gcc版本
sudo apt-get install gcc-4.9 gcc-4.9-multilib g++-4.9 g++-4.9-multilib
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 40
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5.4 50
sudo update-alternatives --config gcc
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 40
sudo update-alternatives --remove gcc /usr/bin/gcc-4.9

查找命令:

  • find . -name ‘my*’:搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文
  • locate ~/m :搜索用户主目录下,所有以m开头的文件
  • locate -i ~/m:搜索用户主目录下,所有以m开头的文件,并且忽略大小写
  • whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息
  • which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

Zip相关

  • 把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip:zip -r yasuo.zip abc.txt dir1
  • 下载了一个yasuo.zip文件,想解压缩:unzip yasuo.zip
  • 当前目录下有abc1.zip,abc2.zip和abc3.zip,一起解压缩它们:unzip abc\?.zip(注释:?表示一个字符,如果用*表示任意多个字符。)
  • 有一个很大的压缩文件large.zip,不想解压缩,只想看看它里面有什么:unzip -v large.zip
  • 下载了一个压缩文件large.zip,想验证一下这个压缩文件是否下载完全了: unzip -t large.zip
  • 用-v选项发现music.zip压缩文件里面有很多目录和子目录,并且子目录中其实都是歌曲mp3文件,把这些文件都下载到第一级目录,而不是一层一层建目录: unzip -j music.zip

Vim相关

跳转到指令行:在命令行模式下输入 “:行号”
查找字符串:在命令行模式下输入 “/字符串”,按“n”键查找下一个
批量替换:在命令行模式下输入 “:%s#abc#def#g” 将def替换abc
批量注释:ctrl+v进入列模式,大写I进入插入模式,输入注释符//或#,连按两次esc。
取消批量注释:Ctrl + v 进入块选择模式,选中你要删除的行首的注释符号,注意// 要选中两个,选好之后按d即可删除注释

安装驱动

查看显卡驱动信息:cat /proc/driver/nvidia/version
查询合适的驱动版本xxx: https://www.geforce.com/drivers

1
2
3
4
5
6
7
8
sudo apt-get remove --purge nvidia-*
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo service lightdm stop
sudo apt-get install nvidia-XXX
sudo service lightdm start
sudo reboot
lsmod | grep nvidia #查看驱动状态是否正常

Matlab相关

后台运行:nohup matlab -nojvm -nodisplay -nosplash < matlabscript.m 1>running.log 2>running.err &

Python相关

##路径
import os
先定义一个带路径的文件
filename = “/home/mydir/test.txt”
将文件路径分割出来
file_dir = os.path.split(filename )[0]
判断文件路径是否存在,如果不存在,则创建,此处是创建多级目录

1
2
if not os.path.isdir(file_dir):
os.makedirs(file_dir)

然后再判断文件是否存在,如果不存在,则创建

1
2
if not os.path.exists(filename ):
os.system(r'touch %s' % filename)

git相关

设置Git的user name和email

1
2
git config --global user.name "yourname"
git config --global user.email "youremail"

生成SSH密钥

1
2
3
4
5
6
7
8
9
10
查看是否已经有了ssh密钥:cd ~/.ssh
如果没有密钥则不会有此文件夹,有则备份删除
生存密钥:
ssh-keygen -t rsa -C “haiyan.xu.vip@gmail.com”
按3个回车,密码为空。
Your identification has been saved in /home/tekkub/.ssh/id_rsa.
Your public key has been saved in /home/tekkub/.ssh/id_rsa.pub.
The key fingerprint is:
………………
最后得到了两个文件:id_rsa和id_rsa.pub

添加密钥到ssh:ssh-add 文件名,需要之前输入密码.

在github上添加ssh密钥,这要添加的是“id_rsa.pub”里面的公钥。

从本地上传到github:
git init
git remote add origin https://github.com/nerddd/text.git