linux基础
作者:
默_1
,
2022-04-24 15:16:08
,
所有人可见
,
阅读 239
vim中p在粘贴时,如果要粘贴的是一个整行,则会粘贴到光标所在行的下一行,
如果要粘贴的不是一个整行,则会粘贴到当前光标所在位置的下一个位置。
bash脚本如果用解释器执行不需要可执行权限,如果作为可执行文件执行,则需要有可执行权限
定义变量的时候=两边不能有空格,否则会报错
如果因为异常退出产生了.swp文件,可以直接删掉
###exit和return的区别
exit和return都会返回exitcode,不同的是,exit用来返回并结束整个脚本,return用来结束函数
###小技巧:如何将服务器中的文件整体复制出来?
1.退出tmux
2.cat filename:展示filename的文件内容
3.鼠标选中文本开头的若干字符
4.用滚轮滑到文件结尾
5.按住Shift,同时鼠标点击文件结尾,此时会选中文件所有内容
6.Windows/Linux下,按Ctrl + insert可以复制全文;Mac下,按Command + c可以复制全文
shell中定义的变量默认是全局变量,在整个shell会话中都有效,在shell自定义函数中定义的变量默认也是全局变量。
如果需要在自定义函数中使用局部变量,需使用local关键字。
ssh中可以直接在后边跟命令,如果命令过长需要用单引号括起来,
不能用双引号,因此和一般的shell语法不太一样
(https://www.acwing.com/file_system/file/content/whole/index/content/2898263/)
退出ssh登陆:Ctrl+D或者exit都可以
scp是ssh封装的一个命令,底层是ssh实现的
配置服务器的vim和tmux只需要将AC Terminal的acs目录下的.vimrc和.tmux.conf
使用scp命令复制到需要配置的服务器上的家目录下(用户名目录下)就可以了
scp的-r -P等参数尽量加在source和destination之前。
scp和cp复制的时候如果有重名文件会覆盖掉原文件
scp传文件时在本地操作,这样将服务器的文件传回本地时本地路径就用相对路径就可以
mkdir中-p参数的含义是如果没有这个文件或文件夹,就创建出来
命令中的-r -p等参数就放到后边 ssh中的-r -p等参数放到ssh后边
git基础
先把文件add到暂存区,然后从暂存区commit到当前分支
git diff [file] git diff XX会先用工作区中的XX与缓存区中的XX进行比较,
若缓存区中没有XX,再用工作区中的XX与当前head指向的版本中的XX进行比较。
https://www.runoob.com/git/git-diff.html
git rm --cached XX 不再管理这个文件,可以用git add重新把他管理起来
git restore --staged [file]是将文件从暂存区移出,但是不会修改文件内容
git restore [file] 使得工作区的文件撤销为暂存区的版本,如果暂存区没有内容,那就是head所指的版本
git add提交修改到暂存区,修改可以是删除文件 删除文件也需要提交到暂存区,例如删除了a.txt之后,git add a.txt 提交a.txt的修改
只要不在暂存区的文件都可以用git restore进行回滚,假如不小心删除了文件就可以用git restore [file]进行回滚修改
acgit新建仓库时,如果使用来上传本地项目一定要把使用自述自述文件初始化仓库的勾选去掉
创建云端版本库看git视频第一个小时左右
删除project的时候需要加一个-f,因为默认会加上不允许删的权限
工作区和暂存区(栈好像也是)是所有分支共用的,所以每次需要切换分支的时候最好把暂存区的东西commit一下,
避免切换后导致冲突
合并分支时会将测分支放到主分支的前一个节点,如果冲突,则在处理完冲突之后commit的话,
会在原本分支的节点后边新创建一个节点,具体情况看git习题课第33分钟左右