Linux学习:简单基础的Linux系统命令
Linux操作系统介绍
肯.汤普逊 丹尼斯.里奇
美国 贝尔实验室
1970-1973
BCPL->new B->C->UNIX系统->Minix->Linux
Linux管理硬盘的能力非常强,所以我们看到只有一个分区
在UNIX/Linux中,一切皆文件
/ 根目录,整个系统所有的文件都存储在它下面
/bin 存储系统命令文件
/dev 存储设备文件
/etc 存储各种软件的配置文件
/home 存储各个用户的用户主目录
/lib 存放普通的库文件
/media 存储外部文件系统文件,例如U盘、共享文件夹
/proc 存储进程的内存情况文件
/usr 存储各种标准库头文件
特殊目录:
/ 根目录
~ 用户主目录
.. 上一层目录
. 当前目录
注意:Linux的目录结构是倒悬树,目录的切换只能上下不能左右
绝对路径和相对路径:
绝对路径:从根目录开始描述一个位置
/home/ubuntu/下载
相对路径:从当前工作目录开始描述一个位置
Linux系统命令:
注意:UNIX/Linux不是为每个功能都分配一条命令
常用的命令:
ls 显示当前工作目录下有哪些文件
-a 显示隐藏文件,以 . 开头的都是隐藏文件
-l 以长格式显示文件的详细信息
cd 进入一个目录
clear 清理屏幕 等同Ubuntu中的ctrl+l
pwd 获取当前目录的绝对路径
whoami 显示当前用户名
文件的常用命令:
touch filename 创建文件
rm filename 删除文件,不经过回收站,要慎重
cat/more/head/tail 查看文件
cat 会把文件的全部内容显示到终端,适合查看内容较少的文件
more 以分页来显示文件内容,回车下一行,空格下一页,q退出
head 只显示开头10行
tail 只显示末尾10行
cp src dest 复制src到dest
mv src dest 移动src到dest,也具备重命名的功能
目录相关命令:
mkdir 创建目录
-p 可以一次性创建多层目录
rmdir 删除目录,只能删除空目录
rm -rf 删除非空目录
cp -r dest src 把dest目录复制到src
mv dest src 移动目录\重命名目录名
网络相关命令:
ifconfig 查看网络配置信息
windows下是ipconfig
sudo ifconfig enpxxx down 禁用网卡enpxxx
sudo ifconfig enpxxx up 启用网卡enpxxx
sudo ifconfig enpxxx 192.168.xx.xx netmask 255.255.xxx.xxx 修改ip地址和子网掩码
ping ip地址/域名 测试网络是否连通
ctrl+c 停止测试
127.0.0.1 本机地址,可以用来测试网卡是否正常工作
windows默认只测试4次,加参数 /t 连续测试,Ctrl+c停止
远程登录Linux服务器:
ftp ip地址 然后输入用户名和密码
采用明码传输数据,不够安全,有被窃听的风险,一般用于公司内部使用
telent ip地址 然后输入用户名和密码
采用明码传输数据,不够安全,有被窃听的风险
ssh 用户名@ip地址 然后输入密码
采用加密方式传输数据,比较安全
exit退出登录
其它相关命令:
chmod 修改文件权限
chmod mmm filename
m = r(4) + w(2) + x(1)
mmm = 自己、同组、其它
chmod +/-r/w/x filename 所有用户一起增加或删除权限
注意:目录必须拥有执行权限才能进入
find 位置 条件 查询的目标
例如:find / -name stdio.h 查找根目录下名字叫stdio.h的文件都在哪里
grep "关键字" 文件名 过滤内容
例如:grep "printf" stdio.h 过滤显示stdio.h中出现printf的语句
sudo 获取超级管理员权限执行命令
sudo reboot 重启
sudo init 0 关机
sudo apt-get upgrade 更新系统
sudo apt-get update 更新软件源
sudo apt-get install 软件名 安装软件
man key 查询帮助手册
分章节查询
1、系统命令
2、系统函数
3、标准库函数
Ubuntu系统使用小技巧:
Ctrl+l 快速清屏 等同于命令clear
tab 自动补全命令、文件、目录
up\down 方向键调出历史命令
Ctrl+Alt+t 快速打开终端
Ctrl+Shift+t 在当前终端新建一个标签页
Alt+Tab 快速切换程序
Ctrl+Alt+方向键 切换工作区
重定向、管道、通配符:
重定向:把命令的执行结果重新定义方向(写入文件)
cmd > filename 如果文件不存在则新建再写入,如果文件存在则清空后写入
cmd >> filename 如果文件不存在则新建再写入,如果文件存在则在末尾追加
管道:相当于用一根管子把两个命令连接在一起,用一个命令的执行结果当做另一个命令的数据源
cmd1 | cmd2
例如:find / | grep "stdio"
从根目录的所有文件中过滤名字中含有stdio关键字的文件
通配符:可以使用通配符进行模糊操作命令
? 代表任意的一个字符
* 代表任意多个的任意字符
// sudo rm -rf /* 很危险
终端配置文件:
gedit ~/.bashrc 打开终端配置文件,注意一定不要修改原来的内容,在末尾追加内容
# 精简命令提示符
PS1="\u@\w$ "
# 创建目录并进入目录
mk()
{
mkdir $1 && cd $1
}
保存关闭,终端输入 source ~/.bashrc 重新加载配置文件,使修改生效
简单的脚本文件:
脚本:由系统命令组成的带有可执行权限的文本文件,执行脚本文件时里面的命令会被命令解释器shell所读取并执行
1、gedit project_create.sh 创建批量生成文件的脚本文件
2、touch xxx xxx xxx 批量生成文件的系统命令
3、保存退出,chmod +x project_create.sh 增加执行权限
4、./project_create.sh 运行脚本
5、chmod -x project_create.sh 删除执行权限
打字练习软件:typespeed
注意:窗口至少80*24
vim文本编辑器:
可以在终端采用纯键盘操作的一款文本编辑器,可以升级,可以扩展(安装插件)
基本用法:
进入vim: vim filename.c 文件存在则打开,不存在则新建后打开
输入i 进入编辑模式,编写代码
输入Esc退出编辑模式,输入ZZ保存退出
vim的三大模式:
正常模式:打开文件时默认就是正常模式,一般用于阅读文件,或者使用快捷键对文件进行快速操作
编辑模式:用于编辑文件、编写代码
行底模式:用于对vim进行一些高级操作、对vim的设置
模式之间的切换:
正常 输入i -> 编辑
编辑 按Esc -> 正常
正常 输入: -> 行底
行底 按Esc -> 正常
正常模式的常用操作:
光标移动:
j k l h
gg 光标跳转到文件开头
G 光标跳转到文件末尾
n+回车 往下跳转n行
n+减号 往上跳转n行
nG 直接跳转到第n行
vim file.c +n 打开后直接跳转到第n行
删除代码:
dd 删除光标所在一行代码
ndd 删除光标下面n行代码
dG 从光标处删除到文件末尾
dgg 从光标处删除到文件开头
d$ 从光标处删除到行尾
d^ 从光标处删除到行首
x 删除一个字符
nx 删除n个字符
dw/de 从光标处连续删除字符直到遇到空格停止
复制、粘贴代码操作:
yy 复制当前一行代码
nyy 复制当前n行代码
p 粘贴到当前光标的下一行
P 粘贴到当前光标的上一行
移动代码操作:
删除的内容依然存在粘贴板中,通过p可以实现移动代码的效果
xp 可以快速交换两个字符
替换代码操作:
r 替换一个字符
cw 替换一个单词
R 进入替换模式
撤销操作:
u 撤销上一步操作
Ctrl+r 取消撤销操作
进入插入模式的操作:
i 在当前光标的前面进入插入模式
I 在当前行的行首进入插入模式
a 在当前光标的后面进入插入模式
A 在当前行的行尾进入插入模式
o 在当前行的下一行插入一行空白行并进入插入模式
O 在当前行的上一行插入一行空白行并进入插入模式
编辑模式的操作:
Ctrl+p 自动补全变量名、函数名...
Ctrl+j/m 相当回车
Ctrl+c 相当于Esc
行底模式的常用操作:
:q 退出
:w 保存
:wq 保存退出
:q! 强制退出
:x 保存退出
:X 加密,输入两次密码,然后输入:wq 才生效
:set key=空格 删除密码 :wq 才生效
:!cmd 执行系统命令
:set nu 设置显示行号
:set nonu 设置取消显示行号
:/key 查询关键词key n往下找,N往上找
:%s/old/new 把所有关键字old,替换为new关键字
:<n n行代码向左缩进一次
:>n n行代码向右缩进一次
注意:行底模式的所有设置都只在当前vim生效,如果想要一直有效,需要修改vim的配置文件(~/.vimrc)
Linux学习:简单基础的Linux系统命令相关推荐
- linux shell概述,Linux学习 -- Shell基础 -- 概述
Shell是什么? 命令解释器 编程语言 Linux支持的Shell类型 cat /etc/shells 主要学习 bash 脚本执行方式 echo echo -e 单引号 -- 原始字符串 双引号 ...
- Linux学习-计算机基础
Linux 学习-计算机基础 一.描述计算机的组成及其功能. 计算机系统是由硬件(Hardware)和软件(Software )两部分组成. 硬件: 从硬件基本结构上来讲,计算机是由运算器.控制器.存 ...
- Linux学习之VMware安装Linux
前言 之前写过一篇VirtualBox安装Linux过程,这里写一篇VMware安装Linux的过程 本文原创,创作不易,转载请注明!!! 本文链接 个人博客:https://ronglin.fun/ ...
- Linux学习笔记---移植官方linux步骤(二)
目录 修改网络驱动 修改 LAN8720 的复位 以及网络时钟 引脚驱动 修改fec1和fec2节点pinctrl-0属性 修改LAN8720A的PHY地址 修改 fec_main.c 文件 配置 L ...
- Linux学习笔记---移植官方linux步骤(一)
使用的开发板是正点原子IMX6U-MINI EMMC512M的开发板,这个板子也是移植的NXP官方linux,所以这里就直接从NXP官方的linux移植. 这里所说的移植,其实不是自己编写驱动文件等 ...
- Linux学习系列二:Linux中的常用命令
这个系列的Linux教程主要参考刘遄老师的<Linux就该这么学>.用的系统是RHEL8,如果遇见一些命令出现问题,请首先检查自己的系统是否一致,如果不一致,可网上查一下系统间某些命令之间 ...
- Linux学习笔记(一):Linux常用命令
linux学习笔记(一):Linux常用命令 ctrl + l 清屏 clear crtl + c 终止操作 Linux常用命令 文件处理命令 ls:list 功能:显示目录文件 选项: -a 显示所 ...
- 【Linux学习】基础篇 1.Linux/Window环境VScode实用插件安装
无论在Linux和Window安装VScode后,都需要下载实用插件,VsCode支持多种语言,比如C/C++.Python.C#等,主要安装C/C++扩展包. 1.C/C++:基础 ...
- linux需要什么基础,学linux需要什么基础?
近几年来,随着计算机网络的发展,越来越多的人学习 linux.对于想要从事运维工作或者从事智能开发方面的同学来说,学习 linux 是必要的.linux 的学习并不简单,那么这篇文章 w3cschoo ...
- Linux学习记录-01(Linux系统发展史)
对计算机一直感觉很神秘,想要学习,奈何不是计算机专业出身,最近决定开始学习,也算是充实一下自己,希望自己可以坚持下去. 一.Linux系统 Linux是一套免费使用和自由传播的类Unix操作系统,是一 ...
最新文章
- 如何在分布式场景下生成全局唯一 ID ?
- java-高并发解决方案
- 【opencv4】opencv视频教程 C++(opencv教程)1、opencv介绍和环境搭建
- SqlCommandBuilder
- [连载]《C#通讯(串口和网络)框架的设计与实现》- 13.中英文版本切换设计
- keytool生成证书_基于 TrueLicense 的项目证书验证
- APPCAN学习笔记002---app快速开发AppCan.cn平台特色
- 佳博打印机ip地址修改软件_win10系统搜索不到共享打印机的问题
- 计算机主板的1117标识,AMS1117封装尺寸图_AMS1117引脚图及功能 - 全文
- 服务器网络销售软文,关于云服务器的软文
- SQL Server中Rowcount与@@Rowcount的用法 和set nocount on 也会更新@@Rowcount
- hMailServer之发送附件大小限制
- C语言sar图像几何校正,SAR图像几何校正方法与流程
- unity导入Standard Assets出现错误
- 为什么要用“设计模式”?(六大好处)
- 上海社保金额精确计算公式
- 金三银四,中高级测试面经,我不信你能看完!
- 告诫程序员们,大三/大四有必要去实习吗?
- 对标 Amazon Go,这家初创企业盯上了国内无人商店市场
- 搜狗输入法 状态栏 自带的好用工具