Linux教程

Linux下常用命令

本文主要是介绍Linux下常用命令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、查找文件
find ./ -name 文件名
eg. find ./ -name “filename”

2 查找端口占用
lsof -i

3、查看安装的所有软件
dpkg -l
dpkg -l | grep ftp

4、窗口键相互切换
alt+tab键;

5、终端操作
ctrl+alt+T :打开终端
ctrl+shift+T: 打开终端标签
alt+1,alt+2,alt+3; ctrl+pageup ,ctrl+pagedown;标签间的相互切换

6、创建文件目录
sudo mkdir filename

7、复制、移动文件夹或文件
(1)复制文件:sudo cp filename ./你的目录/filename
(2)移动文件:sudo mv index.jsp /home/tomcat/webapps
(3)复制目录下的内容:sudo cp -r /etc/ /tmp

8、ssh下远程复制文件
(1)拷贝文件:scp cuda_9.0.176_384.81_linux.run hec-robotai@172.16.82.77:/home/hec-robotai/software/cuda
(2)拷贝文件夹:scp -r /home/administrator/test/ root@192.168.1.100:/root/

9、打开pdf文档
evince 文件名

10、压缩解压文件
(1).tar.gz 和 .tgz文件
  解压:tar zxvf FileName.tar.gz
  压缩:tar zcvf FileName.tar.gz DirName

(2).zip解压文件
(i)把文件解压到当前目录下
unzip test.zip

(ii)如果要把文件解压到指定的目录下,需要用到-d参数。
unzip -d /temp test.zip

11、进入root目录下
su root

12、查看GPU运行状态
nvidia-smi -l

13、查看CPU型号
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

14、配置代理
git config --global https.proxy http://192.168.21.208:808

15、进入root目录下
su root

16、配置代理
git config --global https.proxy http://192.168.21.208:808
https://github.com/tbeu/matio
http://na-wiki.csc.kth.se/mediawiki/index.php/MatIO
https://github.com/zouchuhang/LayoutNet

17、git安装
git config --global user.name "muzifenfang"
git config --global user.email "muzifenfang@foxmail.com"

18、git 下载文件
https://www.jianshu.com/p/b6926f116f0d
GitHub - tbeu/matio: MATLAB MAT File I/O Library
http://na-wiki.csc.kth.se/mediawiki/index.php/MatIO
GitHub - zouchuhang/LayoutNet: Torch implementation of our CVPR 18 paper: "LayoutNet: Reconstructing the 3D Room Layout from a Single RGB Image"

19、修改文件名
mv fromfile tofile

params = torch.load('./model/panofull_joint_box_pretrained.t7')

model_params, grad_params = model_utils.combine_all_parameters(model.core)
model_params = model_params:copy(params)

-- get testing dataset
img_ts = torch.load('./data/panoContext_img_test.t7')
edg_ts = torch.load('./data/panoContext_edge_test.t7')
juc_ts = torch.load('./data/panoContext_cor_test.t7')
lne_ts = torch.load('./data/panoContext_line_test.t7')

Summary on deep learning framework --- Torch7 - AHU-WangXiao - 博客园
THCStorage.cu line=66 error=2 : out of memory

https://www.jianshu.com/p/b6926f116f0d

20、设置环境变量:如何添加自己的路径到PATH
方法一: export PATH=$PATH:/xxx/×××/xxx(目录), 手动添加 只对当前会话有效,也就是说每当登出或注销系统后,PATH设置就会恢复原有设置。
方法二: 修改/etc/profile文件。在/etc/profile文件的适当位置添加PATH=$PATH:/etc/apache/bin
(注意:=即等号两边不能有任何空格)。这种方法最好,除非你手动强制修改PATH的值。否则将不会被改变,针对所有用户都有效。
执行source profile 或执行点命令:./profile,PATH的值就会立即生效了
方法二:修改用户目录下的.bashrc文件,把用户想添加的路径添加到PATH后面。这种方法只针对用户起作用,
执行source ~/.bashrc 或执行点命令:./~/.bashrc,PATH的值就会立即生效了

21、cmake小知识:cmake导入第三方库
(1)设置路径
set(INC_DIR /Users/haoran/Downloads/wfdb/include)
set(LINK_DIR /Users/haoran/Downloads/wfdb/lib)
(2)设置头文件目录、库目录、要链接的库
include_directories(${INC_DIR})
link_directories(${LINK_DIR})
link_libraries(wfdb)
(3)完成库的链接操作:
target_link_libraries(wfdb_demo wfdb)
其中括号中的wfdb_demo为工程名称,wfdb为库的名称。

22、创建文件
(1)、echo “New data”>data
(2)、touch main.o

23、查看磁盘,打开磁盘。
df -h

24、真正的清空屏幕:

    printf “\033c” printf “\ec”

25、在终端下查看拿图片
(1)在linux的终端命令行下可以用命令打开图片, eog ( eye of gmone)
用法如 :eog a.png 详情参见: Apps/EyeOfGnome - GNOME Wiki!
(2)ImageMagick是一套功能强大、稳定、,用来创建、编辑、合成图片而且免费的工具集和开发包。

  在ubuntu下直接安装:sudo apt-get install  imagemagick
安装参见http://elf8848.iteye.com/blog/455675

26、Alt + F4关闭窗口

27、rar命令语法
将/etc 目录压缩为etc.rar 命令为:
rar a etc.rar /etc
将etc.rar 解压 命令为:
rar x etc.rar
unrar -e etc.tar

28、桌面常用快捷键
Alt + F1:聚焦到桌面左侧任务导航栏,可按上下键进行导航
Alt + F2:运行命令
Alt + F4:关闭当前窗口
Alt + Tab:切换程序窗口
Alt + 空格:打开窗口菜单
PrtSc:桌面截图
Win + A:搜索/浏览程序
Win + F:搜索/浏览文件
Win + M:搜索/浏览音乐文件
Win:搜索/浏览程序、文件、音乐文件等

29、常见终端快捷键
Ctrl + Alt + T:打开终端
Tab:命令或文件名自动补全
Ctrl + Shift + C:复制
Ctrl + Shift + V:粘贴
Ctrl + Shift + T:在同一个窗口新建终端标签页
Ctrl + Shift + W:关闭标签页
Ctrl + Shift + N:新建终端窗口
Ctrl + Shift + Q:关闭终端窗口
Ctrl + Shift + PageUp:标签页左移
Ctrl + Shift + PageDown:标签页右移
Ctrl + D:关闭标签页
Ctrl + L:清除屏幕
Ctrl + C:终止当前任务
Ctrl + P:显示上一条历史命令
Ctrl + N:显示下一条历史命令
Ctrl + R:反向搜索历史命令
Ctrl + J/M:回车(同enter键功能)
Ctrl + A:光标移动到行首
Ctrl + E:光标移动到行尾
Ctrl + B:关闭想后移动一个位置(backward)
Ctrl + Z:把当前任务放到后台运行
Ctrl + PageUp:前一个终端标签页
Ctrl + PageDown:下一个终端标签页
F1:打开帮助指南
F11:全屏切换
Alt + F:打开“文件”菜单(file)
Alt + E:打开“编辑”菜单(edit)
Alt + V:打开“查看“菜单(view)
Alt + S:打开“搜索”菜单(search)
Alt + T:打开“终端”菜单(terminal)
Alt + H:打开“帮助”菜单(help)
Ctrl + →:光标移动到上一个单词的词首
Ctrl + ←:光标移动到下一个单词的词尾
Ctrl + T:将光标位置的字符和前一个字符进行位置交换
Ctrl + U:剪切从行的开头到光标前一个位置的所有字符
Ctrl + K:剪切从光标位置到行末的所有字符
Ctrl + Y:粘贴Ctrl + U/Ctrl + K剪切的内容
Ctrl + H/*:删除光标位置的前一个字符(backspace键功能)
Ctrl + D:删除光标位置的一个字符(delete键功能)
Ctrl + W:删除光标位置的前一个单词(Alt + Backspace组合键功能)
Ctrl + &:恢复Ctrl + H/D/W删除的内容
Ctrl + Win + ↑:最大化当前窗口
Ctrl + Win + ↓:还原/最小化当前窗口
Ctrl + Win + D:最小化所有窗口
Win + W:展示所有窗口
Win + T:打开回收站
2次连续Tab/4次连续Esc/2次连续Ctrl + I:将显示所有命令和工具名称

30、常用Gedit编辑器快捷键
Ctrl + N:新建文档
Ctrl + W:关闭文档
Ctrl + S:保存文档
Ctrl + Shift + S:另存为
Ctrl + F:搜索
Ctrl + H:搜索并替换
Ctrl + I:跳到某一行
Ctrl + C:复制
Ctrl + V:粘贴
Ctrl + X:剪切
Ctrl + Q:退出

31、grep
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。linux使用GNU版本的grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。
详细介绍网址:linux grep命令详解 - ggjucheng - 博客园
# grep ‘energywise’ * #在当前目录搜索带'energywise'行的文件
# grep -r ‘energywise’ * #在当前目录及其子目录下搜索'energywise'行的文件# grep -l -r ‘energywise’ * #在当前目录及其子目录下搜索'energywise'行的文件,但是不显示匹配的行,只显示匹配的文件

32、linux下打开wps的文档、表格、演示文档
wps:文档
et: 表格
wpa:演示文档

33、多个文件合并到一个文件中
cat readme1.txt readme2.txt > readme3.txt

34. Linux批量更改文件后缀名的方法(当前目录及其子目录下.c文件修改为.h)
find ./ -name "*.c" | awk -F "." '{print $2}' | xargs -i -t mv ./{}.c ./{}.h

35. zip 命令
(1) zip -r xxx.zip ./*
(2)

36. linux终端锁住和解锁
锁住:ctrl+s;解锁:ctrl+q

37. linux终端下打开图片
(1). display image.jpg
(2). eog image.jpg

38. 软链接
Linux ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
ln [参数][源文件或目录][目标文件或目录]
eg: ln -s /opt/qt5.11.2/ qt5

39. du的用法
du命令用来查看目录或文件所占用磁盘空间的大小。常用选项组合为:du -sh
du常用的选项:  
-h:以人类可读的方式显示  
-a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小  
-s:显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小  
-c:显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和  
--apparent-size:显示目录或文件自身的大小  
-l :统计硬链接占用磁盘空间的大小  
-L:统计符号链接所指向的文件占用的磁盘空间大小  
du -sh : 查看当前目录总共占的容量。而不单独列出各子项占用的容量
du -lh --max-depth=1 : 查看当前目录下一级子文件和子目录占用的磁盘容量。
du -sh * | sort -n :统计当前文件夹(目录)大小,并按文件大小排序
du -sk filename :查看指定文件大小

40. ssh远程运行带有界面的程序
       ssh -X robot@robot: 注意,要使用X

41. linux下typora安装

# optional, but recommended
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE
# add Typora's repository
sudo add-apt-repository 'deb https://typora.io linux/'
sudo apt-get update
# install typora
sudo apt-get install typora


42. 查看磁盘使用情况
df -h

43. linux 装机必备软件
(1)chrome
(2)VSCode
(3)Typora(程序员写文档用的)
(4)Virtualbox
(5)Jetbrains全家桶
(6)Oh-my-zsh(安装教程见Readme文档)
(7)Understand(源代码阅读工具)

44. 查看计算机资源使用情况
    free -m

45. 磁盘永久挂载
vim /etc/fstab, 添加
/dev/sda1 /cdrom/data1 ext4 defaults 0
重启电脑即可进行加载。

46. recordmydesktop 再convert成gif
recordmydesktop是一款著名的录屏工具。它有gtk版本。使用很方便
(1). 安装
sudo apt-get install imagemagick mplayer gtk-recordmydesktop
(2). 使用gtk-recordmydesktop录制并保存文件为 out.ogv
(3). 执行如下命令將 out.ogv 分解成单帧图片
mplayer -ao null out.ogv -vo jpeg:outdir=.
(4). 执行如下命令將单帧图片压缩成 gif 图片
convert *.jpg out.gif
(5). 执行如下命令將 gif 图片进行压缩
convert out.gif -fuzz 10% -layers Optimize optimized.gif

47.linux新建用户
1、添加用户:sudo adduser lff
2、将用户添加到sudo组: sudo usermod -aG sudo lff
3、删除用户:sudo userdel 用户名
sudo deluser 用户名; sudo deluser --group 用户名

sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用

查看用户所属组
groups 用户名,如 groups lff

48.linux注销指定用户
1、pkill -kill -u username

49. dreamview前端编译指令
npm run build

50. Linux查看当前操作系统版本信息
cat /proc/version

51. docker容器中查看容器linux版本
cat /etc/issue

52. docker删除镜像、关闭容器
(1).docker rm <容器ID或容器名>
(2).docker stop<容器ID或容器名>
(3)docker rmi <镜像ID>

53. Linux目录挂载新磁盘后目录里原文件不见了
(1)mkdir /new ###创建临时目录
(2)mount /dev/sdb1 /new ###将磁盘挂载到临时目录
(3)cp -R /home* /new ###将/home下的所有数据复制到/new
(4)rm -rf /home/* ###可选,主要为了腾出空间给原来的磁盘
(5)umount /new ###解除挂载
(6)rm -rf /new ###删除临时目录
(7)mount /dev/sdb1 /home ###挂载/home到新硬盘

54.输入正负号
• 加减号:±
• 上:↑
•下: ↓
• 左:←
• 右:→
• 加:+
• 减:—
• 乘:×
• 除:÷

55. 输入摄氏度


53. typora 公式输入
(1)10V*1/2^{12}。使用花括号
(2)输入乘号:$\times$
(3)小于等于号:\leqslant
(4)大于等于: \geqslant ​
(5)加减号:$\pm$
(6)约等于:$\approx$

54. 单元格中换行
按下组合键Alt+Enter即可。

55. 查看win10墙纸存放路径。
%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes

56. 查看无线网卡驱动信息
linux: iwconfig
windows: netsh wlan show drivers

57.解决error while loading shared libraries: libXXX.so.X: cannot open shared object file
方法1:
# vim /etc/ld.so.conf //在新的一行中加入库文件所在目录
/usr/lib
# ldconfig //更新/etc/ld.so.cache文件
方法2:
(1).将用户用到的库统一放到一个目录,如 /usr/loca/lib
# cp libXXX.so.X /usr/loca/lib/
(2).向库配置文件中,写入库文件所在目录
# vim /etc/ld.so.conf.d/usr-libs.conf
/usr/local/lib
(3).更新/etc/ld.so.cache文件
# ldconfig

58.双引号和句号、逗号的位置
• 句号跟后引号的位置关系。有两种情况。
◇ 一种情况是,引文的句子是完整的,而且被独立地使用。这时,引文末尾的句号应放在引号内。
例如:恩格斯说:运动本身就是矛盾
◇ 另一种情况是,引文是整个句子的一个组成部分,这使句号应该放在引号外。
例如:格斯曾经深刻地指出“运动本身就是矛盾”。
口诀:
引用之语未独立,标点符号引号外。
引用之语能独立,标点符号引号里。
• 逗号在双引号之后

59.文件同步命令
rsync -av lff@robot:/home/lff/work/Alita/RobotControl ./

60.ubuntu下录屏软件
kazam、simplescreenrecoder、recordmydesktop

61.gif动图制作
(1)简单方法
ffmpeg -i kazam.movie.mp4 simpletest.gif
缺点:生成的gif比原来的视频大10~15倍。
(2)参数设置用法
ffmpeg -ss 2 -t 4 -i kazam.movie.mp4 -s 360x720 -r 16 advancedtest.gif
其中,-ss 2 -t 4表示从视频的第2秒开始转换,转换时间长度为4秒后停止;
-s 用于设定分辨率;
-r 用于设定帧数;(15帧左右就比较流畅)
• To force the frame rate of the output file to 24 fps:
ffmpeg -i input.avi -r 24 output.avi
• To force the frame rate of the input file(valid for raw formats only) to 1 fps and the frame rate of the output file to 24 fps:
ffmpeg -r 1 -i input.m2v -r 24 output.avi

63. Ubuntu unattended-upgrade 进程长时间占用cpu
Automatic call via /etc/apt/apt.conf.d/20auto-upgrades
To activate unattended-upgrades, you need to ensure that the apt configuration stub /etc/apt/apt.conf.d/20auto-upgrades contains at least the following lines:
-------------------------------------------------------------------------
# editor /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists “1”;
APT::Periodic::Unattend-Upgrade “1”;
-------------------------------------------------------------------------
解决方法:
APT::Periodic::Unattend-Upgrade “0”;
然后kill掉当前unattended-upgrade进程即可。

62. 将除了child1、child2目录的其他文件移动到目录child1下
使用如下命令:
-------------------------------------------------------------------------
mv !(child1|child2) child1
-------------------------------------------------------------------------
63. comprehen docker重定向
sudo vi /etc/ssh/sshd_config
sudo service ssh start
sudo service ssh status
sudo netstat -nltpe
ssh -X -p 2022 localhost
cat id_rsa.pub >> authorized_keys

64.Pycharm 常用快捷键
Ctrl + Q: 快速查看文档
Ctrl + F1: 显示错误描述或警告信息
Ctrl + /: 行注释(可选中多行)
Ctrl + Alt + L: 代码格式化
Ctrl + Alt + O: 自动导入
Ctrl + Alt + I: 自动缩进
Tab/Shift + Tab: 缩进、不缩进当前行(可选中多行)
Ctrl + C/Ctrl + Insert: 复制当前行或选定的代码块到剪切板
Ctrl + D: 复制指定的区域
Ctrl + Y: 删除当前行
Shift + Enter: 换行(不用鼠标操作了)
Ctrl + J: 插入模版
Ctrl + Shift +/- : 展开/折叠全部代码块
Ctrl + Numpad+ : 全部展开
Ctrl + Numpad-: 全部折叠
Ctrl + Delete: 删除到字符结束
Ctrl + Backspace: 删除到字符开始
Ctrl + Shift +F7: 将当前单词在整个文件中高亮,F3移动到下一个,ESC取消高亮。
Alt +up/down: 方法上移或下移动
Ctrl + B/鼠标左键: 转到方法定义处
Ctrl + W: 选中增加的代码块
Shift + F6: 方法或变量重命名
Ctrl + E: 最近访问的文件
Esc:从其他窗口回到编辑窗口
Shift + Esc: 隐藏当前窗口,焦点到编辑窗口
F12: 回到先前的工具窗口
Ctrl + Shift + up: 快速上移某一行
Ctrl + Shift + down: 快速下移某一行
Ctrl + Alt + 左箭头: 返回上一个光标的位置(CTRL进入函数后返回)
Ctrl + Alt + 右箭头: 前进到后一个光标的位置


65.远程桌面


66. 查看网卡带宽使用情况
(1)工具 ethtool: 查询及设置网卡参数命令。
(2)工具iftop: linux 流量监控工具。使用命令:sudo iftop -i ens2(网卡名称)

67.服务器设置中文输入法
ibus-daemon -drx
ibus-setup

68.windows下启动sshd
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
/usr/bin/sshd

69.windows下cmake编译
export TMP=tmp or export TEMP=temp
cmake -G “Visual Studio 10 2010” ..
cmake --build .


70.区分服务器docker
sudo vi /etc/hosts
sudo hostname SRV-COMPREHEN

这篇关于Linux下常用命令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!