Linux学习笔记(1)-基本覆盖了ubuntu初学的所有命令/快捷键
博主使用windows 10安装VMare虚拟机,ubuntu使用版本为18.04,仅供参考。因为笔者也是初学者,如有错误,欢迎大佬指正!
1.Linux常用基础命令
-
ls 显示当前路径下ia文件(夹)目录
- -l 以列表方式显示,默认字节
- -h 只能显示文件的大小
- -a 显示隐藏文件或者目录
-
pwd 显示当前路径
-
clear 清屏
-
tree 树状目录
-
cd change directory 改变目录
- cd - 返回上一次目录
- cd … 返回上一级目录 (cd …/…/ 返回上两级目录)
- cd . 切换到当前所在路径
- cd / 返回根目录
- cd ~
-
创建、删除文件和目录命令
命令 说明 备注 touch 文件名 创建指定文件夹 .a .开头文件为隐藏文件 mkdir 目录名 创建目录(文件夹) mkdir aa/bb/cc -p 创建所依赖的文件夹(-p) rm 文件名 删除指定文件 rm 指定目录/ -r 【递归删除】可删除非空文件夹
-i 交互时提示
-f 强制删除,忽略不存在的文件,无需提示rmdir 目录名 删除空目录 -
复制、移动文件和目录命令
命令 说明 备注 cp 复制(拷贝)文件目录 cp 源文件名 目标文件名(-r 递归复制 可复制目录)
cp 路径+源文件 路径 复制文件到目标目录
-i 交互式提示
-v 显示拷贝后的路径描述mv 目录名 移动重命名目录(文件夹) -i 交互式提示
-v 显示拷贝后的路径描述-
拷贝文件防止覆盖用 cp-i 操作
-
拷贝文件使用 cp-r 操作
-
移动文件防止覆盖使用 mv-i操作
-
-
终端命令格式组成
-
command [-options] [parameter]
-
command 命令名
-
[options] :选项,可以零个/一个或多个,多个选项可合并,比如 -r
-
[parameter]: 参数,可以有零个/一个或多个,比如:touch 文件名、mkdir 目录名、cd 目标目录(路径),这些文件名和目录名都为参数
-
[]:代表可选
例:ls ls -l ls -lh
-
-
知识要点
- 选项:用于调整命令的功能,比如:-r 选项调整cp命令的功能
- 参数:命令的操作对象,一般是文件名或目录名
- 对于命令,他的选项和参数一般情况下无顺序要求
-
-
查看命令帮助使用
- – help 帮助文档
- man 手册
2.Linux常用基高级命令
-
重定向命令
-
也称输出重定向,把在终端执行命令的的结果保存到目标文件。
-
> 将内容输出
-
>> 将内容追加输出
-
-
查看文件内容命令
- cat 查看小文件
-
more 查看大型文件
-
配合快捷键
f 下一屏
回车 下一行
b 上一屏
q 退出
-
| 管道,一个命令的输出可以通过管道作为另一个命令的输入,相当于一个容器
-
容器
例:将tree中的内容用more查看
-
-
软链接
-
In -s 相当于windows下的快捷方式
-
演练
- 分别使用相对与绝对路径给A/B/C嵌套文件夹里面的hello.py创建软链接
- 把创建好的软链接文件移动到A目录,查看软链接文件的变化
-
-
知识要点
- 方便文件的访问操作
- 创建软链接应使用绝对路径,否则软链接文件有可能失效
- 可以给目录创建软链接
- 删除源文件,软链接文件会失效
-
-
查找文件内容命令
-
grep 查找/搜索文件内容
- -v 显示不包含匹配文本的所有行
- -n 显示匹配行号
- -i 忽略大小写
-
正则表达式
- ^ 以指定字符串开头
- $ 以指定字符串结尾
- . 匹配一个非换行的字符
-
知识要点
-
可通过grep在指定文件查找指定搜索内容,可用于查找管道内容
例:ls / | grep ’lib‘
-
-
-
查找文件
-
find
-
-name 根据文件名查找文件
-
通配符(模糊搜索)
-
* 代表零个或多个字符
-
? 代表一个字符
-
-
-
知识要点
-
通配符不仅可以与find,还可与mv ls cp等使用
-
需注意,与find使用需要加“ 引号”
-
-
-
压缩与解压缩命令
-
.gz 压缩包后缀名 压缩快,不太小
-
.bz2 压缩包后缀名 比较小,压缩慢
-
都是用 tar 命令压缩和解压缩
-
tar命令选项 说明 -c 创建打包文件 -v 显示打包或者解包的详细信息 -f 指定文件名称,必须放到所有选项后面 -z 压缩(.gz) -j 压缩(.bz2) -x 解压缩 -C (大写) 解压缩到指定目录 打包 tar -cvf 文件名 打包文件名
加压 tar -zcvf/-jcvf 文件名 打包文件名
解压 tar -xvf 压缩包文件名
解压到 tar -cvf 文件名 -C 目标目录
-
-
-
文件权限命令
-
文件信息
-
文件权限
-
文件权限修改命令
-
chmod 修改文件权限
-
字母法
chmod u+rwx a.py
- user 该文件所有者
- ugroup 用户组
- o other 其他用户
- a all 所有用户
角色 说明 操作符 说明 权限 说明 u user 该文件所有者 + 增加权限 r 可读 u group 用户组 - 撤销权限 w 可写 o other 其他用户 = 设置权限 x 可操作 a all 所有用户 - 无权限 -
数字法
-
chmod 权限值 文件名
chmod 000 a.py 取消所有人权限
chmod 0 a.py 取消其他人权限
chmod 644 a.py 给所有者增加rw权限,用户组以及其他人可读
权限 说明 r 可读,权限值是4 w 可写,权限值是2 x 可执行,权限值是1 - 无权限,权限值是0
-
-
-
-
-
获取管理员权限的相关命令
-
sudo -s 切换到root用户,获得管理员权限
exit 退出登录用户,可用于root
-
sudo 一次性管理员权限
-
whoami 查看当前用户
-
who 查看所有用户
-
passwd 更改新密码
-
which 查看命令位置
-
shutdown -h now 立刻关机
-
reboot 重启
-
-
远程登陆,远程拷贝命令
- ssh 远程登陆
- 需要安装相应的服务端与客户端
- sudo apt-get install openssh-server
- windows需要安装 openssh for windows,教程参考:https://www.jianshu.com/p/6e5bc39d386e
- 官方安装包链接:http://www.mls-software.com/opensshd.html
- scp
- 远程拷贝文件
- scp 本地文件 远程服务器用户名@远程服务器ip地址:指定拷贝到远程服务器的路径
- scp 远程服务器用户名@远程服务器ip地址:远程服务器文件 指定拷贝到本地的路径
- 远程拷贝目录(文件夹)
- scp -r 本地目录 远程服务器用户名@远程服务器ip地址:指定拷贝到远程服务器的路径
- scp -r 远程服务器用户名@远程服务器ip地址:远程服务器目录 指定拷贝到本地的路径
- -r 表示递归拷贝整个目录
- 远程拷贝文件
- FileZlilla软件的使用
- FTP软件,可视化上传下载
- 官方地址:https://www.filezilla.cn/download/client
- ssh 远程登陆
-
软件安装
-
离线安装 deb文件
- dpkg命令进行软件的安装与卸载
- sudo dpkg -i deb 安装包文件名 离线安装deb安装包
-
在线安装 apt-get方式
-
直接从互联网搜索安装
-
sudo apt-get install 安装包名
-
切换镜像源:
- 阿里
- 清华
- 通过 软件与更新 更改下载源,可参考:https://www.cnblogs.com/weitter/p/12234531.html
- 找不到软件与更新解决办法:https://blog.csdn.net/u011218356/article/details/88795489
-
-
-
软件卸载
- 离线卸载
- sudo dpkg -r 安装包名
- 在线写在
- sudo apt-get remove 安装包名
- 离线卸载
3.Vim介绍
-
文本编辑器 参考https://www.cnblogs.com/hzw6118/p/14076423.html
-
工作模式
- 命令模式 i->2 :->3
- 编辑模式 esc
- 末行模式 esc
- w 保存
- wq 保存退出
- x 保存退出
- q! 强制退出
-
vim常用命令
命令 说明 yy 复制光标所在行 p 粘贴 dd 删除/剪切当前行 V 按行选中 u 撤销 ctr+r 反撤销 G 回到最后一行 gg 回到第一行 数字+G 回到指定行 :/搜索的内容 搜索指定内容 :%s/要替换的内容/替换后的内容/g 全局替换 . 重复上一次命令操作 >> 往右缩进 << 往左缩进 :开始行数,结束行数s/要替换的内容/替换后的内容 局部替换 shift+6 回到当前行行的行首 shift+4 回到当前行的行末 ctr+f 下一屏 ctr+b 上一屏
4.其他知识
- 绝对路径:从根目录为起点的路径(推荐使用)
- 相对路径:从当前所在路径算起的路径
- ./ 当前目录
- 终端阅读信息
- 空格 显示下一屏信息
- 回车 显示下一行信息
- b 显示上一屏信息
- q 退出