Home>Article>Operation and Maintenance> Four tips you absolutely need to use in Linux!
This article brings you relevant knowledge aboutLinux, mainly introducing four extremely practical skills, including jump directory, multi-terminal operation, file editing and custom shell commands Related questions, I hope it will be helpful to everyone.
#The software installation commands in this article take Ubuntu as an example, and other distributions are similar.
Quickly return to a specific parent directory in Bash without typing redundantly "cd ../../..
".
If you are in this path
/home/radia/work/python/tkinter/one/two
and want to quickly go to the directory python, just type :
bd python
Or just enter the first few letters of the directory. If multiple directories are matched, return to the most recent one:
bd p
Example:
bd command installation:
sudo wget --no-check-certificate -O /usr/bin/bd https://raw.githubusercontent.com/vigneshwaranr/bd/master/bd sudo chmod +rx /usr/bin/bd echo 'alias bd=". bd -si"' >> ~/.bashrc source ~/.bashrc
To enable case-sensitive directory name matching, use -s instead of -si in the alias:
If you want to learn more, you can visit Developer GitHub:
https://github.com/vigneshwaranr/bd
cd is not followed by any parameters and returns to the user's home directory, which is equivalent to: cd ~.
cd cd ~
cd - Roll back, return to the previous directory:
cd -
For frequently used directories , you can add a custom command to achieve direct access with one click. This point will be explained in detail below, let’s look at the effect first.
If you are in this path
/home/radia/work/python/tkinter/one/two
and want to quickly go to the directory/home /radia/work/linux/linux-3.16.6
, then just type:
cl
Example:
When operating in a Linux terminal, splitting the screen into multiple windows arbitrarily and reducing mouse operations are all good ways to improve efficiency.
Here, I recommend Terminator. Installation method:
sudo apt-get install terminator
After the installation is complete, CTRL ALT T to open the software, or search for terminator in all programs.
The following figure shows an example of using shortcut keys to split the screen into three small windows, and rename the lower left window to log.
Three parts divided like this:
The lower left corner can be specially used to display the real-time serial port log;
The upper left corner can Used to compile code, view compilation errors, etc.;
On the right side, you can edit code, browse files, etc.
Of course, the size of each split screen can also be flexibly adjusted by dragging the mouse and shortcut keysCTRL SHIFT ↑ ↓ ← →
can be achieved.
If one tab page cannot meet the needs, you can use the shortcut keyCTRL SHIFT T
to open multiple tab pages. The title of the tab page can also be edited for easy differentiation.
Commonly used shortcut keys are as follows:
##CRTL SHIFT T, open a new tab page
CRTL SHIFT E, split screen vertically
CRTL SHIFT O, split screen horizontally
CTRL PAGEUP / PAGEDOWNSwitch between different tab pages left and right
CRTL PAGEUP/PAGEDOWN. For such a common operation, move your finger to
PAGEUP/PAGEDOWNThe distance between the buttons is still too long. I am used to configuring them as ALT H and ALT L, because the ALT button and the direction keys can switch different split screens in the same tab, so I just let ALT to switch between tabs. I chose H and T because I am used to the left and right movement of H and T in Vim.
wget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add - # add Typora's repository sudo add-apt-repository 'deb https://typora.io/linux ./' sudo apt-get update # install typora sudo apt-get install typoraMarkdown and Tpyora are easy to use, you can understand them at a glance, and no further introduction is needed. You can use Markdown format as a common format for recording notes and organizing your own knowledge tree.
Typora 官网:https://www.typora.io
被公认最好用的代码编辑器当然是 Vim,但许多功能配置起来有些繁琐。需要花大量的时间去对比、研究各种插件,这个过程对于初学者是不友好的。
本文先不对任何 Vim 插件做对比,避免眼花缭乱,陷入选择恐惧症,而是直接附上我多年积累、一直在使用的 Vim 配置压缩包,直接解压就可以使用。建议还没有形成自己使用习惯的读者使用我提供的版本,先用起来,在实际使用中慢慢理解,相信过不了多久就能习惯 Vim,再根据自己需求调整或重新配置。
Vim 安装方法:
sudo apt-get install vim
下载 vim.tar.gz 解压后,将 vim-config.tar 解压至用户根目录:
tar -xvf vim-config.tar -C ~/
安装完毕,就这么简单,所有的插件已经包含到压缩包里了,不需要再下载其它东西。
重新开启一个终端窗口就可以使用 Vim 打开代码看看效果了:
上述界面可以看到,左侧界面是文件列表(默认不显示,F3 开/关),右侧时函数列表(默认显示,F9 开/关),可以使用CTRL + W 在各个区域之间跳转,在三个界面上都可以像编辑文件一样,通过 h、j、k、l 移动光标定位。
在函数列表项上按回车键即可跳转到指定函数。
在文件列表项上按回车键,打开相应文件;按 i 或 s,以水平分割或纵向分割窗口打开文件,这个 Vim 的分割窗口的功能,查看代码很实用。
使用 F3 呼出的文件列表,在同目录下打开文件还是比较方便的,但如果需要打开其它位置的文件还是不太方便,可以按 F5 呼出文件查找窗口,输入项目中的文件名,快速开启文件。
查看代码必备的功能就是快速到达函数或变量的定义位置。要实现这个功能,首先需要创建索引。
在项目根目录下执行:
ctags -R * //或者指定需要建立索引的语言 ctags --languages=c,c++,java -R
执行时间根据项目中源码数量而定,文件多则创建索引的时间会久一些。执行完成之后,在项目跟目录下会生成一个 tags 文件。这样再次在该目录下,打开 Vim 就可以使用 CTRL + ] 快捷键,跳转到函数或变量的定义位置了,使用 CTRL + T 返回原来的位置。
上述给出的这些基本操作,已经基本能够满足日常所有的需求。如果喜欢折腾,熟悉之后可以探索更多功能,还可以加快查找速度,这些在 vim.tar.gz 中的 readme 也有简单的说明,算是抛砖引玉。
希望通过上述介绍,你能习惯并喜欢上 Vim。
这套配置默认开启了鼠标的支持,可以通过鼠标定位光标的焦点,使用滚轮翻页代码,这是为了便于初学者上手,后续熟悉了之后建议关闭此功能,因为开启鼠标功能后会损失鼠标的右键菜单,鼠标也不如键盘操作的效率高。
关闭 Vim 中鼠标功能:
vim ~/.vimrc //在303行前加引号,将set mouse=a注释掉即可 " set mouse=a
Linux 的精髓就是脚本,可以对常用操作加入逻辑关系,完成一系列操作,解放我们的双手,这也是程序员喜欢使用 Linux 的一个主要原因。
先来看看上文提到的 cl 命令,其能够实现快速跳转到常用的 Linux 源码目录,这是如何实现的呢?
其实简单到难以置信:只需在当前用户根目录下的 .bashrc 文件中增加命令别名。
按照如下命令尝试一下吧,将其中
/home/radia/work/linux/linux-3.16.6/
替换成自己的常用路径:
echo 'alias cl="cd /home/radia/work/linux/linux-3.16.6/"' >> ~/.bashrc source ~/.bashrc
上图可以看到,在添加之前 cl 命令不可用,添加之后就能够实现功能,成功跳转到指定目录了。
注:上述操作仅需操作一次,在添加后开启的所有终端就都包含了 cl 命令。
逻辑更复杂的命令,就不能像上述cl一样,直接写在~/.bashrc
文件中了。
假设如下场景:
A 工作场景时,需要开启 A 场景所需的软件 A1、A2、A3;B 场景时,又需要软件 B1、B2、B3 的支持。那么可以新增一条命令 env_switch 完成这样的工作环境的切换
env_switch A start #开启A工作环境下的软件A1,A2,A3 env_switch A stop #关闭A工作环境下的软件A1,A2,A3 env_switch B start #开启B工作环境下的软件B1,B2,B3 env_switch B stop #开启B工作环境下的软件B1,B2,B3
实现如下:
在任意目录下,如/home/radia/cmd
,创建脚本文件 env_switch.sh。
加入如下内容,其中开启、关闭软件使用 echo 替代了,实际使用时替换为软件的开启命令即可:
#!/bin/bash function env_switch() { if [ $1 = "A" ]; then echo "A1,A2,A3 " if [ $2 = "start" ];then echo "will be opened" elif [ $2 = "stop" ]; then echo "will be closed" fi elif [ $1 = "B" ];then echo "B1,B2,B3" if [ $2 = "start" ];then echo "will be opened" elif [ $2 = "stop" ]; then echo "will be closed" fi fi }
增加执行权限:
chmod +x env_switch.sh
放到 ~/.bashrc 文件中,这是为了在开启每个终端时,都自动载入我们自定义的命令:
echo 'source /home/radia/cmd/env_switch.sh' >> ~/.bashrc source ~/.bashrc
可以看到上述脚本 envswitch.sh 中只有一个函数,而且并未被调用。这就是本小节中的关键技巧所在,利用 source 命令将脚本中的函数导入当前 shell,这样脚本中的函数就可以和其他的 shell 命令一样使用了,如有其他需求,可以在 envswitch.sh 文件中增加函数即可,增加一个函数,就会新增一条命令。
这种方法适合那些你每天都在做的一系列操作,归纳后形成一个常用命令,是个不错的选择。
另外在开发过程中一些测试场景,如果需要多个步骤的操作,而且在一段时间内会频繁使用,则建议编写成脚本即可,无需增加为命令。
细心的同学可能已经发现了,其实我们之前使用的 bd 命令也只是一个才 50 多行的小脚本,我们平时在使用中也可以花时间写一些自己的小脚本,这样不断积累下来,工作效率才会不断提升,所谓磨刀不误砍柴工嘛。
相关推荐:《Linux视频教程》
The above is the detailed content of Four tips you absolutely need to use in Linux!. For more information, please follow other related articles on the PHP Chinese website!