linux常用命令大全
shell命令行下命令
关机、重启和用户登录注销
命令 | 作用简介 |
---|---|
shutdown -h now | 立即关机 |
shutdown -h 1 | 1分钟后关机 |
shutdown -r now | 立刻重启 |
halt | 效果等于关机 |
reboot | 重启系统 |
sync | 内存数据同步到磁盘 |
logout | 注销用户 |
用户和组管理
命令 | 作用简介 |
---|---|
useradd -s /bin/bash -m 用户名 | 添加用户(默认home目录下) |
passwd 用户名 | 指定密码 |
userdel -r 用户名 | 删除用户(同时删除目录) |
id 用户名 | 查询用户信息 |
su - 切换用户名 | 切换用户(返回原来用户,用exit) |
groupadd 组名 | 添加组名 |
groupdel 组名 | 删除组名(组内有用户则不能删除) |
useradd -g 组名 用户名 | 添加用户并指定组 |
usermod -g 组名 用户名 | 修改用户组名 |
/etc/passwd /etc/shadow /etc/group | 用户的管理三个文件 |
文件目录管理类
命令 | 作用简介 |
---|---|
pwd | 显示当前工作目录绝对路径 |
ls -al 目录名 | 以列表形式显示当前目录所有文件 |
cd 目录名 | 切换目录 |
mkdir 目录名 | 创建目录 |
mkdir -p 目录名 | 创建多级目录 |
rmdir 目录名 | 删除空目录 |
rm -rf 目录名 | 删除有内容的目录 |
touch 文件名 | 创建空文件 |
cp [-r] source dest | 拷贝文件到指定目录(-r表示递归复制整个文件) |
mv 原文件 目标文件/目标目录 | 重命名/移动文件 |
cat 文件 | 以只读方式打开文件 |
more 文件 | 全屏方式按页查看文件1 |
less 文件 | 与more类似,区别见注脚2 |
指令|输出重定向
指令|输出追加
echo 内容|输出内容到控制台
ln -s 源文件或目录 软链接名|类似win系统的快捷方式,创建链接
ldd xxx可执行文件|查看需要的动态库
ulimit -a | 可以查看栈的大小
时间日期类
命令 | 作用简介 |
---|---|
date | 显示当前时间 |
date +%Y | 显示当前年份 |
date +%m | 显示当前月份 |
date “+%Y-%m-%d %H:%M:%S” | 显示年月日时分秒 |
date -s 字符串时间 | 设置系统当前时间 |
cal | 查看当月日历 |
cal 年份 | 查看某年日历 |
搜索查找类
1. find指令
- 基本用法:find [搜索范围] [选项]
- 选项说明:
-name 按照指定文件名查找文件
-user 查找属于指定用户名的文件
-size 按照指定大小查找文件 - 实际案例:
find / -name hello.txt 查找根目录下面的hello.txt
find / -user mxy 查找根目录下面用户名为mxy的文件
find / -size +20M 查找根目录下面文件大小大于20M的文件(+n大于 -n小于 n等于)
2. locate指令
- 基本用法:locate 文件名
- 运行前需要使用updatedb指令来创建locate数据库
- 实际案例:
updatedb
locate hello.txt
3. grep指令和管道符号"|"
- 说明:grep过滤查找,管道符"|"表示将前一个命令处理结果传递给后面的命令处理。
- 常用选项:
-n 显示匹配行
-i 不区分大小写 - 实际案例:
cat hello.txt | grep -ni yes 不区分大小写查找hello文件中yes所在行号
压缩和解压缩类
1. gzip和gunzip指令
- 基本用法:
gzip 文件名 压缩文件为*.gz
gunzip 文件名.gz 解压缩文件
2. zip和unzip指令
- 基本用法:
zip [选项] xxx.zip 要压缩的文件或目录
unzip [选项] xxx.zip - 选项说明:
-r 递归压缩,即压缩目录里面的目录
-d 指定解压后的目录 - 实际案例:
zip -r mypackage.zip /home/ 将home目录下面的所有文件打包为mypackage.zip
unzip -d /opt/tmp mypackage.zip 将mypackage.zip解压到/opt/tmp目录下
3. tar指令
- 基本用法:
tar [选项] xxx.tar.gz 内容 - 选项说明:
-c 产生.tar打包文件
-x 解包.tar文件
-t 查看压缩包内容
-v 显示详细打包信息
-f 指定压缩后的文件名
-常用压缩格式:
-z 有gzip属性 xxx.tar.gz
-j 有bz2属性 xxx.tar.gz
-J 有xz属性 xxx.tar.xz - 实际案例:
tar -zcvf xxx.tar.gz 文件1 文件2 … 压缩多个文件为xxx.tar.gz
tar -zxvf xxx.tar.gz -C 解压目录 解压xxx.tag.gz到指定目录。如果不指定目录,则默认为当前目录。
vi/vim的快捷键
先说下vi/vim的三种模式,正常模式,编辑模式和命令模式。一般而言,vi/vim打开文档直接进入正常模式。在正常模式下输入i或者a(还有其他,这里这两个就够用了)可以进入编辑模式。在正常模式下输入:或者\进入命令模式。后两个模式按ESC可以退回正常模式。
正常模式
正常模式下,可以使用[上下左右]按键来移动光标,也可以使用[删除字符]、[删除整行]、[复制]、[粘贴]等操作来处理文件数据。常用命令如下:
命令 | 作用简介 |
---|---|
yy | 复制当前行 |
数字+yy | 复制多行 |
p | 粘贴 |
dd | 删除当前行 |
数字,dd | 删除多行 |
x | 删除当前光标处字符 |
X | 当前光标退格 |
G(gg) | 定位到文档尾部(首部) |
行号,shift+g | 定位到某行(需要先设置行号) |
shift+$ | 定位到当前行行尾 |
shift+9 | 定位到当前行行首 |
+ | 定位到当前行的下一行的行首 |
- | 定位到当前行的上一行的行首 |
u | 撤销之前的输入 |
r,要改写的字母 | 更改光标处字符 |
e | 定位到当前词的词尾 |
~ | 当前光标处字符大小写转换 |
[数字],shift+k | 查看光标处函数的man函数文档 |
ctrl+w,h | 选中左边窗口 |
ctrl+w,l | 选中右边窗口 |
ctrl+w,j | 选中下边窗口 |
ctrl+w,k | 选中上边窗口 |
命令模式
命令 | 作用简介 |
---|---|
:set nu | 设置行号 |
:set nonu | 取消行号 |
/单词(n可以选择下一个) | 查找其中的一个单词 |
:noh | 消除搜索后的高亮 |
:! man 3 fopen | vi模式下使用man命令 |
:vsp | 将当前文件左右列显示 |
:sp | 将当前文件上下列显示 |
vi/vim的配置
配置Vim编辑器设置Tab键的格数
1. 打开vim配置文件
sudo vim/etc/vim/vimrc
2. 末尾添加一行
set tabstop=4
3. 退出保存
:wq
apt 命令
apt-get update 更新源
netstat 命令
链接: https://blog.youkuaiyun.com/mxyhktk/article/details/107839880.
.bashrc文件相关
alias goxxx=‘cd/home/xxx’ 给一个命令命名,可理解为宏
生效方法
1.重启一个终端
2.source .bashrc
/etc/passwd文件
用户的配置信息,记录用户的各种信息
每行的含义:用户名:口令:用户号:组号:注释性描述:主目录:登陆shell
linux下各种问题
解决动态库找不到问题
- 找到xxx.so放到/usr/lib —不太推荐
sudo find /usr/local -name “libevent.so” - 将xxx.so放到环境变量中
LD_LIBRARY_PATH
export LD_LIBRARY_PATH=xxx
~/.bashrc --用户级别
/etc/profile --系统级别
.~/.bashrc 或者 ./etc/profile .相当于source - 修改/etc/ls.so.config
动态库路径添加到该文件中 -绝对路径
sudo ldconfig -V