《Linux》Notes
《Linux》Notes
Linux 命令 篇
0、基础目录
清空当前命令行信息
1 | clear |
1、文件命令
颜色
-
蓝色
文件夹
d
-
青色
软链接
l
,通过ls -l
可以看到会指向真实文件或文件夹 -
红色
.tar/.tar.gz 归档压缩包
-
黑色
文件
-
查看当前目录
1 | ls |
显示当前位置
1 | pwd |
切换目录
1 | cd |
几个特殊的目录
1 | ~ |
目录操作
1 | mkdir abc |
归档
1 | tar -cvf xxx.tar file1 file2 file3 |
还原归档
1 | tar -xvf example.tar |
软链接
1 | ln -s example examplelink |
2、用户
添加用户
1 | useradd -m test1 |
修改用户密码
密码不会显示的,但实际上输入了
1 | passwd test1 |
删除用户
1 | userdel test1 |
注意,删除用户后,不会自动删除
/home/test1
的文件可以自己删除
sudo rm -rf /home/test1
注意
登陆系统时,默认不允许以root用户登陆
只有特殊用户才能执行sudo
test1就不能执行sudo
能执行sudo命令的用户叫做 sudoer
超级用户root
类似Windows下的管理员Administrator用户
root有全部权限
设置密码
sudo passwd root
切换到 root用户(switch user)
su root
切换用户仅对当前会话终端有效(临时切换而已),不影响当前桌面环境
退出
exit
用户组
默认在同名的组
1 | //创建组 |
以root 登陆桌面
默认不允许
要修改配置
-
其他用户登陆
-
切换到root用户
su root
-
打开配置1
gedit /etc/pam.d/gdm-autologin
注释掉#
#auth required pam_succeed_if.so user != root quiet_success
-
打开配置2
gedit /etc/pam.d/gdm-password
注释掉
#auth required pam_succeed_if.so user != root quiet_success
-
关闭虚拟机,重启
3、文件
文件权限
-
-owner
文件的属主
-
-r
是否可读read
-
-w
是否可写write
-
-x
是否可执行excute
-
权限分为三部分
- 自己
- 同组
- 别人
例如:
rwxrwxr-x
rwxrwxr--
r--------
修改文件权限
只有文件的属主或root可以修改文件权限
1 | chmod o+w example.txt |
修改文件属主
1 | chown |
4、可执行脚本
-
颜色
-
普通文本
黑色
-
可执行脚本
绿色
-
-
脚本Script,一种解释执行的程序
Linux 下常见的三种脚本程序
- Shell 脚本
*.sh
- Perl 脚本
*.pl
- Python 脚本
*.py
脚本文件,本质是一个文本文件
- 是一个文本文件,具有可执行权限
- Shell 脚本
-
脚本程序都是由解释器来执行的
- Shell 脚本解释器
/bin/sh
- Perl 脚本解释器
/bin/perl
- Python 脚本解释器
/bin/python3
- Shell 脚本解释器
-
执行脚本
两种方式
./hello.py
/bin/python3 hello.py
第二种,相当于传入参数
Shell 脚本
-
按Shell 语法写出来的脚本
是Linux 自带的脚本语言
相当于Windows 下的 DOS 批处理脚本
-
写文本
hello.sh
1 | !/bin/sh |
-
添加执行权限
chmod +x hello.sh
Linux很严格,自己也要加上x执行权限,才能执行脚本
-
执行
./hello.sh
执行必须加上路径!
注意不能是
hello.sh
,要加上./
Python 脚本
- 也要走三步流程
- 加上开头
- 添加执行权限
- 用路径执行
1 | #!/bin/python3 |
5、变量
SHELL中的变量
1 | !/bin/sh |
环境变量
-
定义一个环境变量
export OUTDIR=/opt
然后就可以通过${OUTDIR}来作为
/opt
使用了但是,你在一个终端里定义的环境变量,
只在当前终端有效
-
查看当前环境变量命令
printenv
-
环境变量是可以在脚本中直接使用的
用户环境变量
-
在
~/.profile
中定义这个隐藏文件本质也是一个SHELL脚本
-
打开这个文件
-
在文件末尾文本添加
export OUTDIR=/opt
-
重启
原理:当用户打开终端时,会自动执行
.profile
,将变量注入到当前环境中。
注:
每个用户有自己的
.profile
有些Linux 是
.bash_profile
系统环境变量
- 定义的环境变量对所有用户都有效
- 在
/etc/profile
中 - 需要以root命令执行
- 一般不直接修改
/etc/profile
- 而是在
/etc/profile.d/
下创建一个自定义的脚本 gedit /etc/profile.d/myprofile.sh
- 写入脚本
- 重启
- 一般不直接修改
PATH 环境变量
-
PATH,最常见的一个环境变量
用于描述可执行程序的搜索路径
-
查看
echo $PATH
-
路径
- 冒号
:
分开多个路径
- 冒号
-
默认的,系统从以下目录中搜索可执行程序
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin
注意,是
usr
不是user
!!!其中,sbin为超级用户root 才能执行的程序
/usr/
下系统自带的程序,/usr/loacl
才是用户安装的程序。 -
修改
- 在系统变量修改方法中:
打开gedit /etc/profile.d/myprofile.sh
- 写入
export PATH=$PATH:/home/seymour0314
- 重启
当然,使用其他方法也可以,就是PATH生效范围不一样
若你添加了某个路径,
那么下次执行这个路径下的可执行文件时,
就不用通过路径执行了
- 在系统变量修改方法中:
6、虚拟机网络
-
先把 VMware 设置在管理员方式运行下
-
看网络配置部分
-
注意,宿主机能上网,虚拟机才能上网
7、软件包管理器
注意要
sudo
执行
-
apt
-
安装
apt install net-tools
-
移除
apt remove net-tools
-
搜索
apt search xxx
-
列表
apt list | grep xxx
-
8、FTP 服务器
-
比如,传文件给Ubuntu主机
-
可以在要传文件的主机上使用
FileZilla
软件传给虚拟机 -
客户端 FileZilla(Windows)
-
服务器 vsftpd (Ubuntu)
9、SSH 服务器
- 略,服务器用到
10、文本编辑
vi/vim
- vim是vi 的升级版
打开文本编辑
1 | vim abc.txt |
- 如果目标文件存在,则打开编辑
- 如果不存在,会新建一个
切换模式
-
两个模式
- 编辑模式 Insert Mode :按
i
键进入 - 命令模式 Command Mode :按
Esc
键进入
- 编辑模式 Insert Mode :按
-
退出
先进入命令模式
:wq
保存退出:q
退出:q!
强制退出(放弃保存)