Linux入门ubuntu 20.04 64位

多用户操作系统:一台计算机在同一时间可以由多个用户同时使用,多个用户同时共享系统的硬件及软件资源。

一、文件目录结构

没有盘符概念,只有根目录/,所以的文件都在下面。
在这里插入图片描述

  • /bin
    bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
  • /etc
    etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
  • /home
    用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,
  • /lib
    lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
  • /opt
    opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /root
    该目录为系统管理员,也称作超级权限者的用户主目录。
  • /sbin
    s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。
  • /sys
    内核设备树的一个直观反映
  • /tmp
    是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
  • /usr
    是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
  • usr/bin
    系统用户使用的应用程序。
  • /usr/sbin
    超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src
    内核源代码默认的放置目录。
  • /var
    var是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
  • /run
    是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

二、常用Linux命令的基本使用

命令作用
ls(list)查看当前文件夹下的所有内容
pwd(print work directory)查看当前文件夹的路径
cd[目录]切换到指定路径
touch[文件名]如果文件不存在则新建
mkdir[目录]创建目录
rm[文件名]删除指定的文件
clear(clear)删除指定的文件
  • 查看命令帮助信息
command --help 
man command (空格翻屏,f返回一屏,q退出)
#查看mkdir命令的帮助信息
mkdir --help
man mkdir

三、文件和目录命令

1、查看目录内容 ls
ls 列出目录的内容
说明:Linux文件名及目录名称,最长可以由256个字符。
	 以.开头的命名的文件为隐藏文件,查看时需添加-a参数才能显示。
	 .表示当前目录 ..表示上级目录
	 -a 显示当前目录下的所有子目录及文件,包括隐藏文件。
	 -l 以列表的形式显示文件的详细信息
	 -h 配合-l以人性化的方式显示文件大小。

在这里插入图片描述

第一个字符代表文件(-)、目录(d),链接(l)
- 第一组rwx:文件所有者的权限是读、写和执行
- 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行
- 第三组r--:不与文件所有者同组的其他用户的权限是读不能写和执行

文件大小的量级

  • ls 通配符的使用,当需要筛选显示的结果时,使用通配符。
    在这里插入图片描述
    在这里插入图片描述
ls -alh 2* 
列出以2开头的所有文件及文件夹

在这里插入图片描述

2、切换目录

cd 切换当前的工作目录

cd  切换到当前用户的主目录
cd ~ 切换到当前用户的主目录
cd / 切换到根目录
cd . 保持不变
cd .. 返回上级目录
cd - 在最近两次目录中切换
  • 绝对路径和相对路径
    在这里插入图片描述
3、创建和删除
  • touch创建文件或者修改文件操作时间
    如果文件不存在则创建一个空白文件
    如果文件已存在则会修改文件的最后一次修改时间

  • mkdir 创建目录
    添加选项-p可以创建多层级的文件目录结构

// 创建层级目录
mdkir -p d1/d2/d3
  • rm 删除文件,不能恢复
    -r 强制删除,忽略不存在的文件,无需提示。
    -f 递归删除目录下的所有文件,删除文件夹时必须添加此选项。
rm -rf d1

四、拷贝和移动

1、tree

以树状图列出目录结构 -d只显示目录
如果没有tree命令:

1.下载tree-2.0.2 2.tgz  http://mama.indstate.edu/users/ice/tree/ 
2.上传至Linux主机
3.解压tar -zxvf tree-2.0.2 2.tgz
4.进入解压目录tree-2.0.2
5.安装sudo make install
6.测试tree命令
2、拷贝命令 :cp 源文件 目标文件
-i 覆盖文件前提示
-r 如果给出的源文件时目录,将递归复制该目录下的所有文件及目录,目标文件必须为目录。

cp -r pjo pro # 递归复制
3、移动:mv 源文件 目标文件

移动文件或者目录/文件或者目录重命名

mv pro/d2 . #移动
mv d2 d1 #重命名
-i 覆盖文件前提示

五、文件内容命令

1、cat

查看文件内容、创建文件、文件合并、追加文件内容等功能。会一次性显示文件的全部内容,
适合查看内容较少的文本。

-b 对非空行输出编号
-n 对所有行输出编号

nl 等价于 cat -b
2、more

分屏显示文件内容,每次只显示一页内容,适用于查看文件内容较多的文件。

使用空格键显示下一页内容。
enter 一次滚动一行
b 回滚一屏
f 前滚一屏
q 退出
/word 搜索word
3、grep

对文本内容进行正则表达式匹配查找

-n 显示匹配行及行号
-v 正则匹配取反显示
-i 忽略大小写

两种常见的正则匹配
^a 行首以a开头
b$ 行尾以b结尾

编号	参数	解释
1	^	匹配行首
2	$	匹配行尾
3	[ ] or [ n - n ]	匹配[ ]内字符
4	.	匹配任意的单字符
5	*	紧跟一个单字符,表示匹配0个或者多个此字符
6	\	用来屏蔽元字符的特殊含义
7	\?	匹配前面的字符0次或者1次
8	\+	匹配前面的字符1次或者多次
9	X\{m\}	匹配字符X m次
10	X\{m,\}	匹配字符X 最少m次
11	X\{m,n\}	匹配字符X m---n 次
12	666	标记匹配字符,如666 被标记为1,随后想使用666,直接以 1 代替即可
13	\|	表示或的关系

grep -ni java 1.txt 

六、其他命令

1、echo 内容

会在终端中显示参数指定文字,通常和重定向联合使用。

echo hello world 

echo Hello Python >> 1.txt
2、重定向 > 和 >>

将命令结果重定向至一个文件

> 输出至文件,并覆盖文件的原有内容
>> 输出至文件,将内容追加至原有文件末尾

//案例
echo Hello Java >> a.txt
将Hello Java 输出至a.txt

ls -alh >> b.txt
将ls的结果输出至b.txt
3、管道 |

linux允许将一个命令的输出可以通过管道,做为另一个命令的输入。

//选项
more 分屏显示内容
grep 在命令执行结果的基础上,查询指定的文本。

七、远程管理命令

1、关机重启shutdown

可以安全关闭或者重启系统,不指定任何参数和选项时,表示系统1分钟后关闭,注意:远程维护时,不要关闭系统,应该重启系统,减少不必要的麻烦。
-r 表示重启

shutdown //1分钟后关闭计算机
shutdown now //立刻关机
shutdown -r now //立即重启
shutdown 10:50 //10:50关机
shutdown +10 //10分钟后关机
shutdown -c //取消之前的关机计划
2、查看或配置网卡信息ifconfig/ping

网卡:负责网络通信的硬件设备
ip地址:设置在网卡上的地址信息,每台联网的设备都有唯一的ip地址。

ifconfig 查看/配置网卡信息
ping ip 检测与目标ip的连接是否正常

ping www.baidu.com
ping 127.0.0.1
3、远程登录和复制文件
3.1 ssh远程登录

ssh客户端是使用secure shell协议远程连接计算机的程序,对数据传输进行了加密和压缩,可以防止远程传输中的信息泄露,并提高了传输速度。

ssh [-p port] username@remote
remote:远程机器的地址ip/别名/域名
使用exit退出当前登录
ssh -p 22 root@123.56.67.17
3.2 scp远程复制

securp copy linux系统下远程拷贝文件,

-r 如果源文件为目录,则递归复制所有的目录及文件,目标文件必须是目录
-P 指定端口

//示例
scp -P port 1.txt username@ip:Desktop/1.txt

scp -P port username@ip:Desktop/1.txt 1.txt

scp -P port -r demo username@ip:Desktop

scp -P port -r username@ip:Desktop demo

注意::后面如果不是绝对路径,则以用户目录的家目录作为参考
3.3 ssh高级(免密登录、配置别名)

ssh的登录配置都将存储在用户目录.ssh目录下

配置公钥
1.ssh-keygen 生成ssh秘钥,保存在.ssh目录下
让远程服务器记住秘钥(复制)
2.ssh-copy-id -p port suer@ip
1.进入~/.ssh/目录
2.touch config创建文件
3.在config文件中写入:
Host mac
	HostName ip地址
	User username
	Prot 22
4.测试登录ssh mac 直接登录

八、用户权限

用户是Linux系统中重要的一环,本机或者远程登录都需要一个账号,不同的账号用户不同的系统使用资源。为了管理用户来设置管理组。

权限英文缩写数字代号
readr4
writew2
执行excutex1
1、超级用户root

用于系统的维护和管理,对操作系统的所有资源具有所有访问权。日常使用中不推荐使用root用户登录,以免造成系统错误。

su user //切换用户
su - zhangsan //切换至张三用户,并进入张三用的家目录。
使用exit退出,返回之前的用户。
sudo //以预设root用户执行命令,第一次使用时输入密码并有5分钟有效期。
2、chmod修改权限

chmod +/-rwx 文件/目录

//增加执行的权限
chmod +x text

chmod  u=rwx,g=rx,o=rx  文件 #:u=用户权限,g=组权限,o=不同组其他用户权限

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

chmod 777 1.txt
改变所有者(chown)和用户组(chgrp)
chown  用户名 文件名:改变abc的所有者为xiaoming

chgrp 组  文件:改变abc所属的组为root

chown 用户 目录:改变abc这个目录的所有者是root

chown ‐R  用户  目录:改变abc这个目录及其下面所有的文件和目录的所有者是root
3、组管理

创建组、删除组在命令前需添加sudo,以root权限进行增加、删除。

groupadd 组名 //添加组
groupdel 组名 //删除组
cat /etc/group //确认组信息
chgrp -R 组名 文件/目录 //修改文件或者目录所属的组
4、用户管理

需要用sudo,使用roo权限。

useradd -m -g group user //-m自动建立用户家目录 -g指定组
passwd user//设置用户密码
userdel -r user //删除用户,-r自动删除家目录。
cat /etc/passwd | grep user //确认用户信息

注意:创建用户时如果忘记-m属性,没有创建用户家目录,最简单的办法就是删除用户,重新创建。

通过ssh登录新账户,会发现不显示用户名、主机名,方向键无用等

解决方法:

#修改/etc/passwd
vim /etc/passwd
在最后位置找到新增加的用户

将/bin/sh改为/bin/bash

保存退出
  • 查看用户信息
id [user] 查看用户UID/GID信息
who 查看当前所有登录的用户的列表
whoami 查看当前用户的用户名
usermod 用来设置用户的主族/附加组和登录shell
主组:新建用户时指定
附加组:用户的附加权限

#修改用户的主组
usermod -g 组 用户名

#修改用户的附加组,需重新登录。
usermod -G 组 用户名

#修改用户登录shell
usermod -s /bin/bash

注意:默认使用useradd添加的用户没有权限使用sudo命令,如果要使
用则需给用户添加sudo附加组。
usermod -G sudo user
/etc/passwd //用于保存用户信息的文件
/usr/bin/passwd //用于修改用户密码的程序
which命令可以查看执行命令所在位置
which ls 输出 /usr/bin/ls

在这里插入图片描述

  • 修改权限命令:

在这里插入图片描述

九、系统信息相关命令

1、日期时间
date 查看系统时间
cal 查看日历 -y选项可以选择查看那一年的日历
2、查看磁盘信息
df -h 显示磁盘剩余空间 disk free
du -h [目录名] 显示目录容量大小 disk usage
注意:-h以人性化的方式显示
3、进程信息

进程:就是一个正在执行的程序

ps aux 查看进程的详细状态
top 动态显示运行中的进程并排序
kill [-9] pid 终止进程 -9表示强制执行

在这里插入图片描述

十、其他命令

1、查找文件
find [路径] -name "*.py" //如果省略路径则表示在当前路径下查找,*表示通配符。

find / -name 1.txt
2、软连接
ln -s 源文件 快捷方式
注意:源文件使用绝对路径
3、打包/解包
//打包
tar -cvf 文件名.tar 目录/文件
//解压
tar -xcf 文件名.tar

在这里插入图片描述

4、压缩、解压缩
#压缩文件
tar -zcvf 文件名.tar.gz 目录/文件

#解压缩
tar -zxvf 文件名.tar.gz

#解压缩到指定文件夹
tar -zxvf 文件名.tar.gz -C 目标路径

在这里插入图片描述

5、软件安装

6、更换apt镜像
1.修改并添加镜像源地址
sudo vim /etc/apt/sources.list

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse


2.更新
sudo apt-get update
sudo apt-get upgrade

3.测试 
sudo apt install sl

小火车上线,更换成功。
在这里插入图片描述

十一、vim编辑器

在这里插入图片描述

:set nu 显示行号
: set nonu 取消显示号行
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值