Linux 基础
常用命令
ls 显示当前文件夹下的文件和文件夹
ls 路径 显示指定路径下的文件和文件夹
ls -a 显示隐藏文件;注意: 以.开头的文件是隐藏文件
ls -l 显示文件的大小(单位b)和权限
ls -l -h 显示文件的大小(单位会转换)和权限(也可以这样: ls -lh; 即可以可以连在一起写)
ls 2* 显示以2开头的文件;即*替换n个
ls 2? 显示以2开头的,只有2个字符的文件;即?替换1个
ls -> xxx.txt 重定向;即将应当显示在终端的信息写到xxx.txt文件中去
ls ->> xxx.txt 重定向;即将应当显示在终端的信息追加到xxx.txt文件中去
pwd 显示当前所处的路径
touch 创建文件;语法: touch 文件名.文件类型
mkdir 创建文件夹;语法: mkdir 文件夹名
rm 删除文件或文件夹;语法:rm 文件名 或者 rm -r 文件目录
clear 清屏
帮助命令
命令 --help #如: ls --help
man ls
查看文件
cat 文件名
cat 文件名1 文件名2
使用cat和并文件
cat 文件名1 文件名2 -> 新文件名
编辑文件
gedit 文件名
查看历史命令
history
#在使用 history命令后,想执行历史命令可以直接用 !+序号;如!1024
查看文件只显示一屏
more 文件名
#|:将上一个命令和下一个命令结合
ls -alh /bin | more
#在文件中翻页
f 下一屏
b 上一屏
q 退出
一行执行多个命令使用英文分号分隔
ls;ls -alh
取消执行当前输入命令: ctrl+c
删除文件
rm 文件名
rm *.txt
删除空文件夹
rmdir 文件夹名
删除文件夹
rm -r 文件夹名
创建文件夹
mkdir 文件夹名
#当文件夹不存在时自动创建
mkdir 文件夹名1/文件夹名2/文件夹名3 -p
以目录式显示文件夹结构(若没有这个命令需要安装 sudo apt install tree
)
tree
创建软连接(相当于快捷方式)
ln -s 文件名 软连接名
创建硬链接(相当于增加一个文件名)
ln 文件名 硬链接名
重命名文件
mv 原文件名 新的文件名
移动文件到指定目录
mv 原文件名 指定目录/
复制文件
cp 原文件名 指定目录/
复制文件夹
cp 原文件夹名 指定目录/
文件中搜索内容
grep "关键词(支持正则)" 文件名
#显示行号
grep -n "关键词" 文件名
#搜索不包含 关键词
grep -v "关键词" 文件名
更加文件名搜索文件
find / -name "关键字"
find / -name "*.txt"
#根据大小
fidn / -size 1G
#大于4k并且小于5M
find / -size +4k -size -5M
#查找权限为777的文件或目录
find / -perm 777
压缩tar
常用参数
参数 | 含义 |
---|---|
-c | 生成档案文件,创建打包文件 |
-v | 列出归档解档的详细过程,显示进度 |
-f | 指定档案文件名称, f后面一定是 .tar文件,所有必须放选项最后 |
-t | 列出档案中包含的文件 |
-x | 解开档案文件 |
#打包
tar -vcf test.tar *.txt
#压缩
tar -zvcf test.tar.gz *.txt
#压缩
tar -jvcf test.tar.bz2 *.txt
#压缩
zip test.zip *.txt
#解包
tar -xvf test.tar
#解压
tar -zxvf test.tar.gz
#解压
tar -jxvf test.tar.bz2
#解压
unzip test.zip
#解压到指定路径
tat -zxvf test.tar.gz -C test/
#解压到指定路径
unzip -d ./test test.zip
查看日历:cal
cal -y 2018
查看日期:date
date "+%Y-%m-%d"
查看系统进程 ps
#当前窗口的进程
ps
#查看所有进程
ps aux
#查看实时进程
top
htop
#关闭进程
kill pid
#强制关闭进程
kill -9 pid
重启
reboot
关机
shutdown -r now
#立即关机
shutdown -h now
#定时在23:00关机
shutdown -h 23:00
#10分钟后关机
shutdown -h +10
#关机
init 0
#重启
inti 6
检查磁盘空间
#可选参数 -a 显示所有文件系统的磁盘使用情况
-m 以1024字节为单位显示
-h 以最大单位显示
-t 显示各个指定文件系统的磁盘空间使用情况
-T 显示文件系统
df
显示当前路径
du
添加用户
#添加用户
useradd 用户名 -m
#设置密码
sudo passwd 用户名
切换用户
su 用户名
#同时切换到用户的家目录
su - 用户名
#切换到root ubuntu
sudo -s
查看是谁
whoami
查看谁登陆了
who
删除用户
#只删除用户,用户主目录保留
userdel 用户名
#只删除用户和用户主目录
userdel -r 用户名
退出
exit
创建组
sudo groupadd 组名
删除组
sudo groupdel 组名
将用户添加到sudo和adm组中
sudo usermod -a -G adm 用户名
sudo usermod -a -G sudo 用户名
修改文件所属的组
chgrp 组名 文件名
修改文件所属的用户
chown 用户名 文件名
修改权限
chmod u=rwx 文件名
chmod g=r 文件名
chmod o=r 文件名
chmod u=r,g=r,o=r 文件名
chmod u=,g=,o= 文件名
rwx--7 rw---6 rx---5
r----4 wx---3 w----2
x----1
vi 、 vim语法
esc 切换模式
i 切换到插入(后面)模式
a 切换到插入(前面)模式
I 切换到插入(行首)模式
A 切换到插入(行尾)模式
o 下一行
yy 复制光标所在的一行
4yy 复制光标所在的一行开始下的4行
p 粘贴
dd 剪切、删除光标所在的一行
4dd 剪切、删除光标所在的一行开始下的4行
d0 剪切、删除光标所在位置开始到行首
D 剪切、删除光标所在位置开始到行末
x 删除当前光标后面的一个字符
X 删除当前光标前面的一个字符
u 撤销刚刚的操作
CTRL+r 取消刚刚的撤销
h左 j右 k下 l上
H:当前屏幕的上方
M:当前屏幕的中间
L: 当前屏幕的下方
CTRL+f 向下翻页
CTRL+b 向上翻页
CTRL+d 向下翻半页
CTRL+u 向上翻半页
20G 快速的定位到第20行
G 快速的回到整个代码的最后一行
gg 快速的回到整个代码的第一行
w 向后跳一个单词
d 向前跳一个单词
v 选中一片代码
V 选中一片代码
>> 向右移动代码
<< 向左移动代码
. 重复执行上一次命令
{ 回到上一片代码
} 回到下一片代码
r 替换一个字符
R 替换光标后面的字符
:%s/key1/key2/g 所有的key1替换为key2
:1, 10s/key1/key2/g 将第一行到第10行之间的key1替换为key2
/ 开启搜索模式; 使用A和a上下移动
:w 保存
:q 退出
:wq 保存退出
shift+zz 保存退出
:x 保存退出
跳转到指定行
vi 文件名 +行数
如跳转到第10行: vi tmp +10