美文网首页
Linux指令和vim编辑器指令

Linux指令和vim编辑器指令

作者: 杨丶子 | 来源:发表于2019-05-14 17:12 被阅读0次

Linux指令

cd ~ ( 'cd' <=> change directory )回到根目录所在位置;
cd - 回到上次目录所在位置;
pwd 显示当前位置的路径;

ls -a(显示包含目标目录下的隐藏文件。以".a"开头命名的文件会自动隐藏,正常模式下我们看不到);
ls -l (以列表形式显示);
ls -h (以合适的单位来显示文件大小);
ls -a -l -h (等效于ls -alh,命令的顺序不影响作用,例如:ls -a -l -h 等效于 ls -a -h -l);
llls -la 命令等效;

文件或文件夹操作(剪切、复制、删除、打开)

mkdir -p A 创建文件夹A, mkdir也可以创建嵌套的文件夹,如下:
mkdir -p A/B/C/D (Linux下是mkdir A/B/C/D -p),表示在A文件夹下的B文件夹下的C文件夹下创建D文件夹。关于-p指令的作用:如果其中有某个层级不存在,系统会自动帮我们创建缺少的层级(例如A文件夹下面没有B,也就不存在C文件夹了,这个时候系统自动帮我们在A下创建B,然后在B下创建C,再在C下创建文件夹D)。

cp me.txt A/B/me.txt复制到当前目录下的路径A/B/中;

mv指令的两点作用:
mv A AA 将文件夹A改名为AA,mv也可以修改文件的名称mv 2.txt file.txt表示将文件2.txt重命名为file.txt;
mv me.txt AA/ 将'me.txt'文件移动到当前目录下的路径AA/中;

rm 删除指令(rm 就是 remove的缩写形式);
删除文件夹时使用 rm + 文件夹名,一般提示无法删除,需要使用rm -r 文件夹名or文件名,例如rm -r D(Linux系统是rm D -r,可以通过rm —help指令查看rm指令在该系统下有哪些操作指令,没必要强记),表示删除D文件夹。 -r指令其实就是递归删除。

open 文件名 打开文件(打开后可以自由编辑。在Linux上,可以使用gedit指令打开文件并自由编辑,可惜Unix上面没有gedit)。[Tips:倘若该文件名太长不方便输入,可以敲入文件名的前1~n个字母,然后按tab键,终端会智能匹配最合适的文件名]
open 文件夹名称 显示文件夹。例如:open Test,会打开Finder显示当前目录下的Test文件夹,功能类似于show in Finder
也可以使用通配符指令,如:open *.txt打开当前目录下的所有.txt文件。

cat 文件名 查看文件内容,直接将文件内容显示在终端上面;

touch file.txt 新建一个file.txt文件。如果需要编辑,可以使用open file.txt 命令打开文件,然后自由编辑。也可以使用gedit(Unix上面gedit指令无效😂);

history 指令用于查看历史指令记录。所有近期使用的指令都会按先后顺序列举出来,如 :

...省略前面n多条指令...
555 ..............................
566  cat vimTest.txt 
567  ls
568  open vimTest.txt 

此时,我们可以通过 ! 序号 (例如:!568),我们自己的terminate此时即执行对应需要的指令,这里!568表示 终端列表上面第568条指令,即open vimTest.txt指令。

通配符

通配符有两种:
① *, *可以匹配0~n位;
② ?, ?只能匹配一位;
ls 1[1234]1.txt 也是通配符,表示只通配111.txt、121.txt、131.txt、141.txt这几个选项;
ls 1[1-4]1.txt 等价于ls1[1234]1.txt,都表示中间只能是111.txt、121.txt、131.txt、141.txt这几个选项。

重定向

ls > xxx.txt 表示将当前文件夹下面ls指令应该显示出来的信息输入到xxx.txt文件中;
ls -alh > xxx.txt "ls -alh"指令应该显示的信息输入到xxx.txt文件中;
ls -alh >> xxx.txt 追加文件内容到xxx.txt中;
>>>的异同点:
相同点:如果之前的文件xxx.txt不存在,这两者都会新建一个xxx.txt文件的。
不同点:>>会往文件中追加内容,> 会覆盖原来的文件中的内容。

more 命令

ls | more指令可以结合使用。这样可以不通过重定向这一步骤将文件写入到指定的文档中再查看。直接ls | more可以翻页查看,|表示通道的意思。

ls ; ls -alh 多个命令一起使用的时候,中间用;(英文分号)隔开;但是一般不这样用,毕竟低效嘛(这就好比买了辆法拉利,在高速上面开20km/h😸)

control c 撤销已经输入的指令(不执行已输入的指令。情景:一段指令输入错误,由于指令太长,删除起来麻烦,可以直接control+c另起一行,重新输入)。友情提示:control+c会不会与系统的热键重复?比如Mac上面QQ的截图功能就是control+c,如果想使用该键,可以在QQ的偏好设置中修改QQ的截图热键。

cat a.txt b.txt >> c.txt (将a.txt 与b.txt文件内容合并到c.txt文件中,如果c.txt不存在,就自动创建c.txt)

grep "1" c.txt 在c.txt中查找含1的字段;
grep "^1" c.txt 在c.txt中查找开头为1的字段;
grep "xt$" c.txt 在c.txt中查找末尾为xt的字段;

image image image image image image
软链接和硬链接

ln -s file.txt soft-link.txt 为file.txt创建一个软链接,软链接名称为 soft-link.txt;
ln -s file.txt soft-link.txt

cat b.txt >> c.txt 将b.txt文件内容追加到c.txt中;

echo "I am fine!" >> me.txt 写入一段连续的字符串到me.txt文件中;

cat << EOF >> me.txt 
> I am fine.
> Thanks.
> Have a good trip.
> EOF  

通过cat << EOF EOF的形式可以借助终端写入多段内容到me.txt中。

grep指令

grep 用来从文件里面搜内容

image
打包、解包、压缩、解压缩指令

tar -cvf test.tar *.txt 打包(test.tar打包后文件名, *.txt 该目录下需要打包的文件类型)
tar -xvf test.tar 解包

tar -zcvf test.tar.gz *.txt 压缩(test.tar压缩后文件名, *.txt 该目录下需要压缩的文件类型)
tar -zxvf test.tar.gz 解压缩;

tar -jcvf test.tar.bz2 *.txt 这种方式压缩后体积比.gz方式的大一点;
tar -jxvf test.tar.bz2 解压缩;

zip test.zip *.txt .zip方式的压缩;
unzip test.zip .zip解压缩命令;

unzip -d ./test test.zip -d + ./xxx 指令表示支持解压到当前目录中test文件夹下;

tar -zxvf test.tar.gz -C ./GZ (tar.gz方式解压到指定路径)

unzip -d ZIP test.zip (zip方式解压到指定路径)

date "+%T-%Y-%m-%d"

image
查看程序占用内存情况

ps aux 查看内存占用情况,不直观;
top 查看内存使用情况(直观);
kill -9 内存PID号 强制杀掉PID号对应的进程;

文件权限基础及操作

drwxr-xr-x 5 zhouyong staff 160B 4 21 14:28 BZ2
拥有者 u
同组者 g
其让人 o
chmod u=rx c14.txt
chmod u=r,g=r,o=r c14.txt (同时设置拥有者、同组者、其他人的权限)

chmod 修改文件权限,有两种方式:
① "字母法",也就是上述 u、g、o;
② “数字法”,其中r w x位分别用 4 2 1数字表示有效,则指令chmod 7 4 1 test.txt表示设置 test.txt文件的权限等价为:chmod u = rwx,g=w,o=x test.txt

系统重启、关机(定时)

sudo shutdown -h now 立即关机;
sudo reboot 重启计算机;
sudo shutdown -h +10 十分钟后自动关机;
sudo shutdown -r now 重启计算机;
sudo shutdown -r +1 一分钟后重启计算机;

vim 指令:

vim xxx.py 打开xxx.py文件,如果xxx.py文件不存在,就自动创建一个xxx.py文件
i 表示切换到输入模式,esc退出输入模式,并切换到指令模式;
yy 复制光标所在行内容;
pp 粘贴拷贝的内容 ;

esc 回到命令模式;
a ,i均可切换到编辑模式。区别:a为在光标后面插入, i为在光标前面插入;
o命令切换到下一行;O切换到光标所在行的上一行; 命令模式A插入到光标所在行的行尾;I`插入到光标所在行的行首;

n yy (n为数字) ,表示复制光标行开始的n行。如5 yy,则从光标位置开始往下复制5行内容;
dd 删除光标所在的行。n dd(n为数字),表示从光标所在行开始往下删除n行内容;

dd 其实是剪切的功能, dd之后可以使用p粘贴剪切的内容;

光标定位功能

M 定位到屏幕可见区域中央;
L 定位到屏幕可见区域最下部;
H 定位到屏幕可见区域最上部;

control f 下一页
control b 上一页
control u 向上半屏
control d 向下半屏

n G 快速定位到第n行。
n G 快速定位到第n行代码。如18G快速定位到第18行
G 快速回到整个代码最后一行;
gg 快速回到代码的第一行;

w, 以单词进行划分,向后跳一个单词的长度,调到下一个单词的开头;
b,向前跳一个单词的长度,调到上一个单词的开头;

D 从当前的光标开始剪切,一直到行末;
d0 从当前光标开始剪切,一直到行首;

u 撤销刚刚的操作;
control r 反撤销;
x 删除当前的光标后面的元素,每次只删除一个元素;
X 删除当前光标前面的元素,每次只删除一个元素;

选中一片代码:

v
V
>> 向右移动代码;
<< 向左移动代码;
. 重复执行上一次命令。

{ 跳到光标所在段的段首;
} 跳到光标所在段的段尾;

dw 删除光标所在位置的这个单词的,光标的后面字符,包含光标所在的字符

r 替换当前字符;
R 替换当前行光标后的字符;

查找命令:

/ str查找
n 下一个
N 上一个

替换:

:%s/hello/hi/g 将hello全部替换为hi;
:11,16s/hello/hi/g 将line11~line16中的hello全部替换为hi;

末行模式:

w保存
q 退出
wq 保存并退出

shift zz 相当于wq

相关文章

  • Linux指令和vim编辑器指令

    Linux指令 cd ~ ( 'cd' <=> change directory )回到根目录所在位置;cd - ...

  • vim编辑器常用指令

    vim编辑器常用指令 一、一般指令模式(command mode): 1.1 移动游标方法 指令代表含义[Ctrl...

  • linux-vim编辑器常用指令

    1、常用vim编辑器指令方式 2、vim编辑器打开后,查看具体的 3、移动光标

  • Unix指令和vim编辑器指令

    【原创博文,转载请注明出处!】一些比较常用的Unix指令和vim指令,很长一段时间不用就遗忘了,每次写脚本的时候还...

  • vi/vim 最简单的编辑操作

    备注:vi编辑器是所有Unix及Linux系统下标准的编辑器,vim 是vi的升级版本,它不仅兼容vi的所有指令,...

  • sed介绍

    Linux指令中文说明传送入口 整理自Linux指令中文说明 功能强大的流式文本编辑器sed 是一种流编辑器,它是...

  • linux操作文件命令

    linux操作文件命令 vi / vim 有三种模式: 指令模式, 编辑模式, 指令列命令模式 cat 文件名 ...

  • 【linux】vim指令大全

    光标移动命令 n表示数字按键,x表示任意字符按键,大多数指令前加上数字,可实现对应的多重效果 功能按键备注基本指令...

  • ubuntu学习

    基本指令 unable to access 新加卷 vim指令

  • Linux指令简述和vim简介

    集成电路设计不论是数字电路设计还是模拟电路设计,又或者是工艺设计,都是在Unix或者linux平台上展开的;但对l...

网友评论

      本文标题:Linux指令和vim编辑器指令

      本文链接:https://www.haomeiwen.com/subject/ksirnqtx.html