一些常用易忘的命令行
·
Xiebro
Linux
# 查询磁盘使用情况
du -d1 -h
# 查询CPU使用情况
top -d
# 查询网络情况
networkQuality
# 文件复制
cp file.txt newfile.txt
cp file.txt /path/
# 文件内容复制
cat file.txt | pbcopy # 复制到剪贴板
pbpaste > newfile.txt # 粘贴到新文件
# 文件压缩
tar -zcvf abc.tar.gz directory #将目录压缩为gzip格式
# 文件解压
tar -zxvf abc.tar.gz
# 对比两份文件
diff file1 file2
# 上传文件到云端
scp /path/to/local/file username@server:/path/to/remote/directory
# 下载文件到本地
scp username@server:/path/to/remote/file /path/to/local/directory
# 查询自身 IP
curl -v https://api.ipify.org
# 服务重启
systemctl restart nginx # stop/start ; mysql
Git
# .ssh目录下生成公钥 -----------------------------------------------------------
$ ssh-keygen -t rsa -C “youremail@example.com”
# rm的用法 ---------------------------------------------------------------------
rm file; git add file # 先从工作区删除,在暂存删除内容
git rm <file> # 把文件从工作区和暂存区同时删除
git rm --cached <file> # 把文件从暂存区删除,但保留在当前工作区中
git rm -r * # 递归删除某个目录下的所有子目录和文件
# diff的用法 -------------------------------------------------------------------
git diff # 工作区vs暂存区
git diff HEAD # 工作区+暂存区vs本地仓库
git diff --cached # 暂存区vs本地仓库
git diff HEAD~ HEAD # 比较提交之间的差异
git diff <commit_hash> <commit_hash> # 比较提交之间的差异
git diff <branch_anme> <branch_name> # 比较分支之间的差异
# reset的三种模式 --------------------------------------------------------------
git reset --soft # 工作区、暂存区均不丢弃
git reset --hard # 工作区、暂存区均被丢弃
git reset --mixed # 工作区不丢弃、暂存区丢弃
git reset --hard HEAD^ # 回退到上一版本
git reset --hard HEAD~n # 回退到第上n个版本
git reset --hard <commit_hash> # 回退到指定版本
# 当文件已add到暂存区时,将其撤回到工作区
git reset HEAD readme.txt
# stash的用法 ------------------------------------------------------------------
git stash # 保存工作现场
git stash apply # 恢复工作现场(但不删除stash内容)
git stash pop # 恢复工作现场(并且删除stash内容)
git stash list # 显示所有工作现场
git stash apply stash@{0} # 选择要恢复的工作现场
# .gitignore配置 ---------------------------------------------------------------
*.a # 忽略所有.a结尾的文件
!lib.a # 但跟踪所有的lib.a,即便之前忽略了.a文件
build/ # 忽略任何目录下名为build的文件夹
doc/*.txt # 忽略doc/file.txt,但不会忽略doc/document/file.txt
doc/**/*.pdf # 忽略doc/目录及其所有子目录下的.pdf文件