查看文件或目录
-
Print Working Directory查看当前目录的绝对路径PWD -
List查看当前目录列表ls -
查看指定目录列表
ls ~/Desktop -
查看目录下文件内容查看全部
cat 1.txt -
查看目录下文件内容查看开头内容
默认为开头十行,也可以设置为开头14行
head 1.txt
// 或者
head 1.txt -n 14
- 查看目录下文结尾内容 默认为结尾十行,也可以设置为结尾14行
tail 1.txt
// 或者
tail 1.txt -n 14
- 查看目录下文件,并分屏滚动查看内容
less 1.txt
新增文件或目录
-
创建文件
touh 1.txt -
创建文件
echo HelloWorld创建文字内容echo HelloWorld > 1.txt追加文字内容echo My >> 1.txt一次添加多行文字内容echo -e "1\n2" > 1.txt" -
创建目录
Mkdir myfile -
创建一次创建多个目录
Mkdir myfile1 myfile2 myfile3 -
创建一次创建多个嵌套目录
Mkdir -p myfile1/myfile2/myfile3
复制文件或目录
-
复制文件,将
1.txt复制到新的2.txt, 命令为cp 1.txt 2.txt -
复制目录,将目录
a复制到新的目录b, 命令为cp -r a b
删除文件或目录
- 清除屏幕代码
clear - 删除文件
rm 1.txt - 删除目录
a, 命令为rm -r a
修改文件或目录
- 修改文件
code 1.txt或者追加内容echo 'acvd' >> 1.txt - 清空文件
echo '' > 1.txt - 移动文件,将文件
1.txt移动到桌面mv 1.txt Desktop - 重命文件, 将文件
1.txt修改为2.txtmv 1.txt 2.txt - 修改文件更新时间
touch 1.txt
查询命令
ls --help | less
或者下载简易查询手册
yarn global add tldr
使用方法查询ls命令
tldr ls
骚操作
- 查询命令是否成功,成功返回
0,非0则失败, 命名为echo $? &&操作,当一条命令成功后,执行另一条, 命令为rm 1.txt && echo 移除成功;操作,不管前一条命令是否成功,都会执行后一条命令, 命令为rm 1.txt ; echo 移除成功- 通过
VS code打开文件,code 1.txt或者start 1.txt - 文件添加可执行权限,
chmod + x file1 - 将文件路径添加到电脑的环境变量
Path中,可直接运行,例如file
绝对路径与相对路径
- 当前目录为
./ - 父目录为
../
绝对路径是从根目录开始,一定以/开头,~ 开头也是绝对路径,为用户目录。
例如
.,
./xxx,
./xxx/,
xxx,
xxx/1.txt
相对路径是相对于当前目录的,不以/开头。
例如
/c/Users/Fang/Desktop,
/c/Users/Fang/Music,
~/Desktop,
~/Music`
初始GitHub本地
git config --global user.name // 设置用户信息
git config --global user.email // 设置用户邮箱信息
git config --global push.default simple
git config --global core.quotepath false
git config --global core.editor "code --wait"
git config --global core.autocrlf input
查询是否配置成功, git config --global --list
配置GitHub
git init // 初始化Git,创建.git目录
git add // 为添加文件变化,而不是文件本身
git add userfile // 添加本地文件到git目录
rm index.html // 删除本地文件,然后添加变化
git add .
git status 或者 git status -sb // 提交git版本,申明信息
忽略文件不被添加到git目录,
- 新建文件
.gitignore, - 在该文件添加忽略的文件名,例如
1.txt
提交文件和查看历史
git commit -m "初始话文件" // 提交git版本,回顾变动,申明信息
git commit -v // 查看git命令历史
查看历史或回滚版本
history // 查看git历史
git log // 查看git所有历史
git reflog // 回滚git版本
git reset --hard HEAD // 回滚到该commint的状态
配置Branch
git branch x // 基于当前git commit,创建git分支
git checkout x // 切换到该git分支
git branch // 查询所在Branch,以及所有Branch
git branch -d x // 删除Branch
解决合并冲突
git merge x // 合并某Branch
git status -sb // 查看出现冲突的文件
处理冲突,
- 打开冲突文件,
- 删除不同的代码,删除
===,或者<<<<<, 保存。 - 添加变化
git add . - 最后推送
git commit && git push
生成SShKey
SSh Key
Git在本地存有私钥,GitHub云端存有公钥,唯有二者匹配,才能正常运行。通过SSh key加密连接
- 下载
SSH密钥ssh-keygen -t rsa -b 4096 -C "your_email@exampl.com" - 在本地找到
SSH密钥,为公钥,复制到GitHub的设置里cat ~/Users/caval/.ssh/id_rsa.pub - 确认是否配对成功,成功为yes
- 查询结果
ssh -T git@github.com
初始Github本地
echo "# LeariningNote" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:Captain-Tab/xxx1.git
git push -u origin master
上传到GitHub
git push origin x:x // 将本地分支推送到远程仓库
或者
`git checkout x // 切换Branch
`git push -u origin x // 然后推送
clone命令
git clone git@username/xxx.git //在本地复制创建一个xxx目录, 在本地复制创建一个xxx目录
cd xxx // 然后切换到该文件
git clone git@username/xxx.git aaa // 在当前目录复制创建一个xxx目录, 但是重命名为 aaa
cd aaa // 然后切换到该文件
cd /aaa // 在指定目录aaa复制创建一个xxx目录
git clone git@username/xxx.git xxx // 然后下载分支
推送骚操作
如何将1个文件上传到两个不同的GitHub远程仓库,
git remote add origin git@github.com:Captain-Tab/xxx1.git // 第一个
git push origin -u xxx1 master // 然后
git remote add origin2 git@github.com:Captain-Tab/xxx2.git // 第二个
git push origin2 -u xxx2 master // 然后
设置别名Alias
touch ~/.bashrc // 更新bash配置文件
echo 'alias ga="git add"'>> ~/.bashrc // git add追加别名
echo 'alias gc="git commit -v"'>> ~/.bashrc // git commit 追加别名
source ~/.bashrc // 最后运行
rebase命令
git rebase -i HEAD // 一个分支的修改合并到当前分支
git rebase --abort // 终止rebase的行动
git rebase --continue // 继续rebase的行动
stash命令
git stash // 将当前的文档隐藏,不加入文档变化流程
git stash pop // 显示隐藏文件
git stash apply // 显示隐藏文件