// 压缩文件及文件夹
tar -zcvf test.tar.gz file1 file2 dir1 dir2
// 解压到当前目录
tar -xvf qtcreator-v7.0.0.tar.xz
// 安装.deb包
dpkg -i ***.deb
// 删除应用程序
dpkg -r 或者dpkg --purge
(1)远程操作服务器,在远程主机上执行命令,访问文件
ssh daboluo@10.99.128.166
(2)挂载:将远程主机上的文件系统挂载到本地主机上, 可以像访问本地文件系统一样访问远程主机上的文件和目录
// 1.安装服务
sudo apt-get install sshfs
sudo apt install openssh-serve
// 2.创建本地目录,并设置权限
sudo mkdir /home/daboluo
sudo chmod +777 /home/daboluo
// 3.开始挂载远端目录到本地目录
sshfs daboluo@10.99.128.166:/home/daboluo /home/daboluo
// 4.使用完后卸载掉挂载
umount /home/daboluo
(3)在本机和远程机器之间拷贝文件
// 1.传输本地文件-->远程目录
scp /home/bendi/filename daboluo@10.99.128.166:/home/daboluo/Downloads
// 2.传输远程文件-->本地目录
scp daboluo@10.99.128.166:/home/daboluo/Downloads/filename /home/bendi
// 3.传输文件夹需要在scp命令后加"-r"参数
// 修改网络设置后,比如DNS,重启网络服务
sudo service network-manager restart
// 查找匹配的文件
find . -name "*daboluo*"
// 查找文件中的内容
grep -r "daboluo"
// make日志输出到文件
make -j28 2>&1 | tee make.log
// 模拟崩溃
kill -4 `pidof wps`
// 下载svn仓库
svn checkout http://svn.mso.kingsoft.net/Public/
// 查看进程加载了哪些库,12306是进程id(进程目录下还可以查看进程所占用的内存空间、状态信息、文件描述符等)
cat /proc/12306/maps
// 系统启动时设置环境变量以及其他自定义初始化操作
在 X Window 系统中,当用户登录时,会先执行 "$HOME/.xprofile" 文件,然后再启动窗口管理器或桌面环境。
用户可以在这个文件中添加一些需要在登录时执行的命令,例如设置环境变量、启动一些应用程序或运行脚本等。
// 先安装一个linux下开源的字体库
sudo apt-get install fontconfig
// 列出系统上安装的可用字体
fc-list | grep 宋体
// 字体缓存将被删除并重新生成,以更新系统中的字体信息
fc-cache -f -v
// 解压到文件夹
dpkg-deb -R 15283.deb good/
// 压缩成deb
dpkg-deb -b good/ 15284.deb
// 查找端口是否被占用
netstat -tuln | grep 3389
// 查找端口被哪个进程占用
sudo lsof -i :3389
// 释放端口(释放进程)
sudo kill -9 1160
// 1.查看当前状态
git status
// 2.查看日志
git log
// 3.查看某个文件的日志
git log test.txt
// 4.列出搜索的分支
git branch --all | grep 20230921
// 5.切换分支名
git checkout -b 本地分支/远端分支
// 6.搜索日志
git log --grep 修改图标
// 7.跟新子模块
git submodule update --init --recursive
// 8.添加所有修改点
git add .
// 9.增加提交信息
git commit -m ""
// 10.先拉最新代码,并更新HEAD,最后提交代码到远程仓库
git pull --rebase
git push
// 1.删除未添加到仓库的全部文件/目录
git clean -f -d
// 2.删除未添加到仓库的某个文件(可以鼠标选中文件, 然后按鼠标滚轮键<复制粘贴>)
rm -rf fileName.txt
// 3.回滚已经提交的记录
git reset --soft HEAD^
// 4.取消暂存(执行完暂存后,进入添加修改点前的状态)
git restore --stage .
// 5.取消本地修改点
git restore .
// 6.回滚到某个提交点
git reset --soft commitId
// 7.只回滚某个文件
git checkout commitId foo.txt
// -x 提交信息的末尾追加一行 (cherry picked from commit ...)
// 方便记录提交记录由谁产生的
git cherry-pick -x commitid1 commitid2 commitid3
// 还想再此基础上修改修改
git commit --amend
git revert --no-edit commitid1 commitid2
就是将别人的提交记录信息,生成到本地的一个文件,你可以在自己的代码上使用。例如,可以将qt5官网的某个提交记录,下载它的patch,就可以在自己的代码上应用它。
// 1.单次提交打补丁
git format-patch -1 commitid1
// 2.应用补丁(自己写提交信息:只修改本地代码,还需要commit)
git apply fileName.patch
git commit -m ""
// 3.应用补丁(一步到位:修改代码并自动commit,包含一些patch的信息)
git am fileName.patch
tips:可以生成某次提交之前的N次、某两次提交之间的代码、某个提交之后所有的代码等,进行打补丁
保存当前修改到暂存区,可以在当前分支或者其他分支处理新BUG,提交处理完之后,可以恢复之前写的代码。
// 暂存
git stash
// 恢复
git stash pop
// 合并其他分支1012-->1115
git merge --no-edit origin/rc_v12_professinoal_20231012_branch
// 终止合并
git merge --abort
// 本地已合并,未push到远端,但是想回滚到远端当前分支1115的头结点
git reset --hard origin/rc_v12_professional_20231115_branch
// 1.启动调试
gdb ./et
// 2.设置参数
set args -w
// 3.显示参数
show args
// 4.插入断点
break /home/daboluo/workspace/Coding/main.cpp:8
// 5.运行
run
// 6.跳到下一个断点,相当于F5
continue
// 7.跳过函数内部
next
// 8.进入函数内部
step
// 9.打印变量
print value
// 10.查看已经设置的断点
info b
// 11.删除断点
delete num
// 12.打印当前的堆栈
bt
// 13.切换栈帧
frame num
// 14.跳到上一个栈帧
up
// 15.跳到下一个栈帧
down
// 16.退出
quit
// 编译器查找动态连接库时有隐含的命名规则,即在给定的名字前面加上lib,后面加上.so来查找库的名称
// 小写L,比如引用libxcb.so。大写L,引用库路径,大写i引用头文件
g++ main.cpp -lxcb -L/usr/local/lib -I/usr/local/include
// 编译源码
./configure // 检测系统配置并生成Makefile
make // 读取Makefile的指令进行编译
make install // 也是读取Makefile的指令,安装头文件和库到指定的位置
// 查看库依赖
ldd a.out
// 制作动态库链接
ln -s libxxxx.so.xx libxxxx.so
// 根据某个键,进行查找
SELECT * FROM table_name WHERE id="RestrictPermission";
// 查询表中数据的个数
SELECT COUNT(*) FROM table_name;
// 插入一条数据
INSERT INTO table_name (employee_id, first_name, last_name) VALUES (1, 'John', 'Doe');
// 插入一条数据,包含所有的列,则可以省略列名。在有些列,不想赋值,也必须给个空值
INSERT INTO table_name VALUES (1, 'John', 'Doe');
tips:(1)如果某些列被定义为"NOT NULL",则必须为这些列提供值。(2)在省略列名的情况下,有些列不想赋值,也必须给个空值'',否则插入错误,因为和列的总数无法对应。