avatar

目录
Linux 基础速查

系统命令

查看release

bash
1
lsb_release -aa

查看内核

Code
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 文件”


评论