系统命令
查看release
1 | lsb_release -aa |
查看内核
1 | uname -a |
基本命令
帮助
xxx —help
man xxx
文件相关
cd,
ls (-a -l -al)
pwd
mkdir
chmod
whichis
whereis
which
查看文档:
cat, head, head -1, tail, more(分屏显示)
wc, wc -l(查看文件行数), wc -c(查看多少字符), wc -w(查看多少单词)
复制粘贴:chmod
cp, mv(移动或者重命名)
编辑文档:
touch
echo xxx > xx.txt
gedit xx.txt
连接
ln(硬链接)
ln -s xxx soft (软链接)
解释: https://blog.csdn.net/LEON1741/article/details/100136449
压缩
tar cvf test.tar dir/压缩
tar xvf test.tar -C /dir1 /dir2 file3解压
tar xzcf
tar csvf
(.gz/ .z/ .Z/ .tgz)
gzip (压缩)
gzip -d(解压)
gzip -r
gzip -rd
系统相关
time(统计程序执行时间)
date
uname
uname -a (查看内核)
lsb_release
du -sh 查看文件大小
dmesg 内核状态信息
uptime 显示时间, 系统运行时间
who/w 查看登录的用户
whoami\hostname
cal\ncal
bc 计算器
top cpu使用率
free 内存使用
ps 查看进程
ps -a 查看所有进程
网络相关
ping
ifconfig
netstat
服务
service xxx start
service xxx restart
service xxx stop
高级命令
查找命令
find . -name hello.c
find /dir -name hello.c
find .dir -iname hello.c (不区分大小写)
grep “test” -r /dir (查找关键字)
grep “test” - r -c /dir (-c 显示行数)
cscope -Rk ( c 的搜索工具, 需要 apt install cscope安装, ctrl + d 退出)
管道
ps -A | grep usb
cat file | grep hello
cat file | ls > file2
cat file | file2
重定向
n > file, 将文件描述符为 n 的文件重定向到 file
n >> file, 将文件描述符为 n 的文件以追加的方式重定向到 file。
bash
#!/bin/bash
加在bash 文件开头
vim命令
vim 基本命令
插入模式: i 或者 o
ctrl + b 下翻一页
ctrl + f 上翻一页
ctrl + u 上翻半页
ctrl + d 下翻半页
shift + g 到最后一行
数字, shift + g 到指定行
ctrl + g 显示当前行数和百分比
shift
j,k,l, h 上下左右移动
$移动到某一行末尾
x 删除一个字符, p 恢复
nx 删除n个字符
b 移动光标到单词首部
dw 删除一个单词, p 恢复
dd 删除整行, p 恢复
shift + d 删除光标后面所有的内容
数字, dd 删除n行
yy复制, p 粘贴
数字, yy 复制光标向下n行
u, 撤销
ctrl, 重做
vi /etc/vim/vimrc 设置配置文件
:set num 显示行号
环境变量
常用环境变量
$PATH
$HOME
$LOGNAME
$SHELL
$PS1 用户权限
修改环境变量
参考链接
https://www.jianshu.com/p/900da3657078
root下修改
/etc/bashrc 或者 /etc/profile 里的变量对所有用户都有效
profile文件需要source
用户目录下修改
~/.bashrc 下用export X=??, 对所有用户有效
~`/.bashrc 下用X=??, 对当前用户有效
查看所有环境变量
env
显示所有本地定义的Shell
变量
set
PATH变量追加
export PATH=$PATH:/home/code/bin
export PATH=/home/code/bin:$PATH
文件系统
linux目录
tree -L -1 查看文件树
/bin 二进制可执行弥补那个零
/dev 设备特殊文件
/tec 启动配置文件
/home 用户祝目录
/lib 标准程序设计库
/sbin 超级管理命令
/tmp 临时文件
/root 系统管理员的主目录
/mnt 系统提供这个目录让用户临时挂载其他的文件系统
/lost+found 非正常关机临时文件
/proc 虚拟的目录, 是系统内存的映射
/var 大文件溢出区
/usr 最庞大的目录, 包括所有的应用程序和文件
/usr/bin 众多的应用程序
/usr/sbin 超级用户管理程序
/usr/man 帮助文档
/usr/local/bin 本地增加的命令
/usr/local/lib
用户组
添加新用户
useradd -g 用户组 -c 描述 -d 主目录 -s shell解释器 -m 用户名
/etc/skel里的文件会被拷贝到新创建的用户的主目录下
添加用户组
groupadd 组名
根目录下 /etc/gshadow 或者 /etc/passwd 或者 /etc/gshadow可以查看有哪些组
usermod -g 组名 用户 可以更改用户组
usermod -u 改用户uid
userdel -r -f 用户名 删除用户
groupdel 组名 删除组
文件权限
r 读
w 写
x 执行
drwxr-xr-w
1位: 文件类型, 2-4位: u-所有者. 5-7位: g-组, 8-10位置: o-其他用户
a- 所有用户
chown 文件名 用户名: 改变文件owner
chmod u+x 文件名: 给所有者增加执行权限
chmod a=rwx 文件名: 给所有人权限变成rwx
r, w, x 是可以用权重法的, 分别是4, 2, 1
chmod 777 文件名: 权限变为rwxrwxrwx
chmod 614 文件名字: 权限变为rw—-xr—
进程
查看进程
ps -A 显示所有进程
ps -A | grep udev 显示含有udev的进程
ps a 显示终端相关进程
ps aux 常使用的命令, 不包含tty控制命令的, 包含用户名的所有进程
ps d 显示终端无关进程
ps u 显示进程和用户uid
ps —help 查看ps帮助
man ps 查看ps手册
/proc 文件夹下可以查看所有进程
top 可以查看cpu使用率, 按s可以更改刷新率
top -d 可以直接设置刷新率
top -d 1 -p number 可以查看第number个进程
kill pid 可以杀死pid进程
软件安装卸载
软件包安装步骤
- 下载源代码包
- 生成脚本文件: AUTOCONF
- 配置 ./configure (默认安装到use/local/bin ./configure —prefix=/path 可以安装到指定路径)
- 编译 make (make j4可以加速)
- 安装 make install
- 添加环境变量 PATH (vi ./bashrc 下 添加 export PATH=/path :$PATH, 然后source ./bashrc)
- 清理临时文件 make clean
- 卸载 make unistall (或者直接去安装目录删除, 再删除环境变量)
使用dpkg安装软件包
安装 dpkg -i xxx.deb
安装某目录下多个deb包: dpkg -R /usr/xxx-src
卸载 dpkg -r xxx
制作deb软件包
apt install checkinstall
apt install dh-make
下载源代码包
- 生成脚本文件: AUTOCONF
- 配置 ./configure (默认安装到use/local/bin ./configure —prefix=/path 可以安装到指定路径)
编译 make (make j4可以加速)
checkinstall (会生成deb 包)
- dpkg -i deb包名字 就可以安装
apt安装软件
apt的文件源放在 /etc/apt/sources.list下
apt remove/autoremove 卸载
apt update 更新本地数据库
apt upgrade 升级
apt clean 清除本地安装包
wine安装windows软件
apt install wine
wine “exe 文件”