文章目录
1、vim的分屏功能
总结起来,基本都是ctrl+w然后加上某一个按键字母,触发一个功能。
(1)在shell里打开几个文件并且分屏:
vim -On file1 file2 ...
vim -on file1 file2 ...
大O表示垂直分割(vertical),小o表示水平分割(默认horizontal),后面的n表示分几个屏,实际上我觉得不用写,默认按后面要分割的文件数来决定分几个屏。
(2)在vim里打开一个分屏:
创建空白分屏::new
打开任意文件: :vsplit(:vsp) filename
:sp(split) filename
打开当前文件:ctrl+w 和 s(split)
ctrl+w 和 v(vsplit)
(3)关闭一个分屏:
:only
或者 ctrl+w
和 o
取消其它分屏,只保留当前分屏ctrl+w
和 c(close)
只剩最后一个分屏以后推出:ctrl+w
和 q(quit)
(4)移动光标,也就是切换分屏;也可以移动分屏,比如将左分屏移动到右边。
ctrl+w 和 w(各种切换,只有两个分屏的时候还是比较方便的)
ctrl+w 和 h(H) 左
ctrl+w 和 j(J) 下
ctrl+w 和 k(K) 上
ctrl+w 和 l(L) 右
(5)最后就是改变分屏尺寸的操作了。
ctrl+w 和 < 左
ctrl+w 和 > 右
ctrl+w 和 + 上
ctrl+w 和 - 下
ctrl+w 和 = 恢复均等
2、linux查找文件(find)及查在特定文件中查找字符
find ./ -name 'file_name' # ./ 表示当前路径(可以换成绝对路径)
find ./ -name "dictionary_name" -type d # 查找文件夹dictionary_name
find ./ -name "*.h" | xargs grep -lr "find_string" # xargs 表示将find的结果传递给grep,-r表示递归查找
3、修改文件权限
sudo chmod 777 file_name
sudo chmod 777 * # 修改当先目录下所有文件权限
4、more命令
more +/pattern filename # 显示filename中pattern字符后的内容
5、cat 命令
cat -n filename # 显示所有行号(包括空行)
cat -b filename # 显示所有行号(但不包括空行)
6、历史命令——history
history # 查看终端历史命令(所有最近命令)
history n # 查看最近n条命令
history|grep cd # 查看最近的命令中包含cd的命令
!n # 执行历史记录中的第n个命令
7、在终端窗口打开另一个终端
- 用正常的方式打开一个终端。
- 使用组合键
ctrl+shift+t
,这时就在同一个窗口中打开了另一个终端,当然再按一次ctrl+shift+t
,会再生成一个,需要多少了大家可以自行决定。 - 按组合键
Alt+1
,就会切换到第一个终端,按Alt+2
,就会切换到第2个终端,Alt+n
,对应的就会切换到第n个终端。 - 关闭终端快捷键
ctrl+d
。
8、Ubuntu设置中文
- 如果你是刚安装好的系统,先更新一下软件源和软件包,输入
sudo apt update && sudo apt upgrade -y
- 安装中文语言包:
sudo apt install -y language-pack-zh-hans language-pack-zh-hans-base
- 设置本地化环境变量:
echo "LANG=zh_CN.UTF-8" >> ~/.profile
重新打开 Ubuntu,完成!并不是所有命令都支持中文,要看软件是否支持。
9、设置默认python版本
whereis python
可以查看系统安装的python
程序的位置- 进入
/etc/bin
ll|grep python
查看本目录下包含python
的文件sudo ln -s python3.5 python
将当前目录下的python3.5
可执行程序创建一个名为python
的快捷方式sudo ln -s python3.5 py
创建名为py
的快捷方式
以后输入python
或者py
即可直接进入python3.5
10、Ubuntu下files中显示文件路径快捷键
Ctrl+L
11、Ubuntu终端光标相关快捷键
ctr+a # 移动光标到命令行开始处(紧接命令提示符号)
ctr+e # 移动光标到命令行行尾
ctr+k #删除光标到行尾命令
ctr+u # 删除光标到行开始处命令
12、简单shell
脚本示范
#!/bin/bash
# 在这写终端命令,如果有多条命令,可以用‘;’分开
# 如果需要传入参数,可以用‘$0’(表示执行的文件名)、‘$1’(表示第一个参数)、‘$2’(表示第二个参数)。
# 举个例子如下,假设文件名为test.sh
ls $1
# 运行:
# ./test.sh /bin/
# 显示/bin目录下所有文件
13、echo简单使用
echo "message" > file_name # 将message写入file_name中(删除文件内容再写入)
echo "message" >> file_name # 将message写入file_name中(不删除文件内容再写入——追加)
14、Ubuntu终端以图形界面方式打开任意文件夹
nautilus # 以root权限打开home目录
nautilus . # 以root权限打开当前目录
nautilus path # 以root权限打开path目录
15、C++特殊宏定义
环境:linux
#include <stdio.h>
int main(int argc, char const *argv[])
{
printf("Line = %d\n", __LINE__);
printf("File = %s\n", __FILE__);
printf("Date = %s\n", __DATE__);
printf("Time = %s\n", __TIME__);
printf("Func = %s\n", __func__);
return 0;
}
Line = 5
File = 9.cpp
Date = Jul 18 2019
Time = 18:05:31
Func = main