ubuntu--Linux使用

Linux使用

Linux 系统简介

linux

Linux 就是一个操作系统,与 Windows 和 Mac OS 一样是操作系统

操作系统在整个计算机系统中的角色 :

操作系统

Linux 主要是 系统调用内核 那两层。使用的操作系统还包含一些在其上运行的应用程序,比如vim、google、vscode等。

Linus Torvalds

Linux 之父,芬兰赫尔辛基大学

对,这就是现在的林纳斯·托瓦兹,他喜欢在演讲当中骂脏话,还有竖中指

Linux 与 Windows 的不同

Linux
  • 稳定的系统
  • 安全性和漏洞的快速修补
  • 多用户
  • 用户和用户组的规划
  • 相对较少的系统资源占用
  • 可定制裁剪,移植到嵌入式平台(如安卓设备)
  • 可选择的多种图形用户界面(如 GNOME,KDE)
Windows
  • 特定的支持厂商
  • 足够的游戏娱乐支持度
  • 足够的专业软件支持度

基本概念及操作

linux 终端

终端的概念

通常我们在使用 Linux 时,并不是直接与系统打交道,而是通过一个叫做 Shell 的中间程序来完成的,在图形界面下为了实现让我们在一个窗口中完成用户输入和显示输出,Linux 系统还提供了一个叫做终端模拟器的程序(Terminal)。

image-20200728195948642

注意的的终端(Terminal)和 控制台(Console)是有区别的。

终端本质上是对应着 Linux 上的 /dev/tty 设备,Linux 的多用户登录就是通过不同的 /dev/tty 设备完成的,

Linux 默认提供了 6 个 界面的 “terminal”来让用户登录。

在物理机系统上你可以通过使用Ctrl+Alt+F1~F6进行切换

image-20200728200241440

image-20200728200301134

image-20200728200348370

image-20200728200409866

image-20200728200426011

image-20200728200441720

Shell

不同发行版的各种终端模拟器,而是这个 Shell( 壳 )。

有壳就有核,核就是指 UNIX/Linux 内核,Shell` 是 指“ 提供给使用者使用界面 ”的软件(命令解析器). Shell 隐藏了操作系统底层的细节。

UNIX/Linux 操作系统下的 Shell 既是用户交互的界面,也是控制系统的脚本语言

Ubuntu 终端默认使用的是 bash

命令行操作体验

在 linux 中,最最重要的就是命令,这就包含了 2 个过程,输入输出

  • 输入:输入当然就是打开终端,然后按键盘输入,然后按回车
  • 输出:输出会返回你想要的结果,比如你要看什么文件,就会返回文件的内容。执行失败会告诉你哪里错了,执行成功就没有输出

linux 的哲学就是:没有结果就是最好的结果

 # 查看当前目录下的文件
ls#创建一个名为 test 的文件
touch test#进入一个目录
cd /etc/#查看当前所在目录
pwd

image-20200728185847192

重要快捷键:

Tab

使用Tab键来进行命令补全补全目录补全命令参数 , 当你忘记某些全称时 , 只要输入它的开头的一部分,然后按下Tab键就可以看见提示或者帮助完成

Ctrl+c

当你在 Linux 命令行中无意输入不知道的命令,或 使用错误命令,导致在终端里出现了你无法预料的情况,比如,屏幕上只有光标在闪烁却无法继续输入命令,或 不停地输出一大堆垃圾结果。

想要立即停止 , 就可以使用Ctrl+c键来 发送 SIGINT 信号给前台进程组中的所有进程,强制终止程序的执行

tail

image-20200728185953563

其他常用快捷键

按键作用
Ctrl+d键盘输入结束或退出终端
Ctrl+s暂停当前程序,暂停后按下任意键恢复运行
Ctrl+z将当前程序放到后台运行,恢复到前台为命令fg
Ctrl+a将光标移至输入行头,相当于Home
Ctrl+e将光标移至输入行末,相当于End
Ctrl+k删除从光标所在位置到行末
Alt+Backspace向前删除一个单词
Shift+PgUp将终端显示向上滚动
Shift+PgDn将终端显示向下滚动

利用历史输入命令

可以使用键盘上的方向上键,恢复你之前输入过的命令

使用通配符

通配符是一种特殊语句,主要有星号(*)和问号(?),用来对字符串进行模糊匹配(比如文件名、参数名)。

# 回到用户家目录
cd /home/cpucode

image-20200728190318106

# 进入目录
cd code/# 查看目录
ls# 进入目录
cd test/# 查看目录
ls
# 创建 2 个文件,后缀都为 txt
touch test.txt test2.txt
# 使用通配符找所有的 .txt文件
ls *.txt

image-20200728190434413

# 创建多个文件
touch test_{1..6}_cpucode.txt

image-20200728190610224

Shell 常用通配符:

字符含义
*匹配 0 或多个字符
?匹配任意一个字符
[list]匹配 list 中的任意单一字符
[^list]匹配 除 list 中的任意单一字符以外的字符
[c1-c2]匹配 c1-c2 中的任意单一字符 如:[0-9][a-z]
{string1,string2,...}匹配 string1 或 string2 (或更多)其一字符串
{c1..c2}匹配 c1-c2 中全部字符 如{1…10}

在命令行中获取帮助

在 Linux 环境中,如果你遇到困难,可以使用man命令,它是Manual pages的缩写。

Manual pages 是 UNIX 或类 UNIX 操作系统中在线软件文档的一种普遍的形式, 内容包括计算机程序(包括 系统调用)、正式的标准惯例,甚至是抽象的概念。用户可以通过执行man命令调用手册页。

# 查看 man 命令本身的使用方式
man man

image-20200728190737552

image-20200728190723177

为了便于查找,man 手册被进行了分册(分区段)处理,

区段说明
1一般命令
2系统调用
3库函数,涵盖了 C 标准函数库
4特殊文件(通常是/dev 中的设备)和驱动程序
5文件格式和约定
6游戏和屏保
7杂项
8系统管理命令和守护进程

在 man 后面加上相应区段的数字

man 1 ls

image-20200728190820767

显示第一区段中的ls命令 man 页面:

image-20200728190834722

所有的手册页遵循一个常见的布局,为了通过简单的 ASCII 文本展示而被优化,而这种情况下可能没有任何形式的高亮或字体控制。

一般包括以下部分内容:

NAME(名称)

该命令或函数的名称,接着是一行简介。

SYNOPSIS(概要)

对于命令,正式的描述它如何运行,以及需要什么样的命令行参数。对于函数,介绍函数所需的参数,以及哪个头文件包含该函数的定义。

DESCRIPTION(说明)

命令或函数功能的文本描述。

EXAMPLES(示例)

常用的一些示例。

SEE ALSO(参见)

相关命令或函数的列表。

常见的例子包括

  • OPTIONS(选项)
  • EXIT STATUS(退出状态)
  • ENVIRONMENT(环境)
  • BUGS(程序漏洞)
  • FILES(文件)
  • AUTHOR(作者)
  • REPORTING BUGS(已知漏洞)
  • HISTORY(历史)
  • COPYRIGHT(版权)

man

# 搜索
/<关键字>
# 切换到下一个关键字所在处
n
# 为上一个关键字所在处
shift + n
# (空格键)翻页
Space
# (回车键)向下滚动一行
Enter
# (vim 编辑器的移动键)
# 向上滚动一行
k
# 向下滚动一行
j
# 显示使用帮助
h
# 退出
q

查看 命令的具体参数的作用 :

ls --help

image-20200728190925414

输出图形字符

# 更新一下源
sudo apt-get update

image-20200728191549620

# 安装 figlet软件
sudo apt-get install figlet

image-20200728192301137

# 显示cpucode
figlet cpucode

image-20200728192237837

# 卸载 figlet
sudo apt autoremove figlet

image-20200728192344308

# 再次使用无效
figlet cpucode

image-20200728192516058

用户及文件权限管理

Linux 用户管理

Linux 是一个可以实现多用户登录的操作系统

比如“小明”和“小亮”都可以同时登录同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件。

但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于 Linux 的 用户管理权限机制,不同用户不可以轻易地查看、修改彼此的文件。

查看用户

请打开终端,输入命令:

who am i
# 或
who mom likes

第一 : 打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用 whoami 即可),

第二 : pts/0pts 表示伪终端,所谓是相对于 /dev/tty 设备而言的,这是“ 真终端 ” , 终端时的那七个使用 [Ctrl+Alt+F1~F7 进行切换的 /dev/tty 设备

第三 : 当前伪终端的启动时间

image-20200728222026631

who 命令常用参数 :

参数说明
-a打印能打印的全部
-d打印死掉的进程
-mam imom likes
-q打印当前登录用户数及用户名
-u打印当前登录用户登录信息
-r打印运行等级
创建用户

Linux 系统里, root 账户拥有整个系统至高无上的权限,如 : 删库跑路。

root 是 Linux 和 UNIX 系统中的超级管理员用户帐户,该帐户拥有整个系统至高无上的权力,可以肆意操作

比如 : 安卓手机(基于 Linux 内核)获得 root 权限之后就相当于获得了手机的最高权限,可以对手机中的任何文件操作。

一般登录ubuntu系统时都是以普通账户的身份登录的,要创建用户需要 root 权限,这里就要用到 sudo 这个命令了。

su,su- 与 sudo

Linux 环境下输入密码是不会显示

su <user> 可以切换到用户 user,执行时需要输入目标用户的密码,

sudo <cmd> 可以以特权级别运行 cmd 命令,需要当前用户属于 sudo 组,且需要输入当前用户的密码。

su - <user> 命令也是切换用户,但是同时用户的环境变量和工作目录也会跟着改变成目标用户所对应的。

创建 test 用户 :

sudo adduser test

image-20200729134646084

重新设置 test的用户密码 :

sudo passwd test

image-20200729134659023

查看新用户在 /home 目录下创建一个工作目录:

ls /home

image-20200729134740919

切换用户:

su -l test

image-20200729134838360

查看用户终端:

who am i

查看用户名

whoami

查看当前路径

pwd

image-20200729134919367

退出当前用户跟退出终端一样,可以使用 exit 命令 或者 使用快捷键 Ctrl+D

image-20200729135013163

image-20200729134934701

用户组

Linux 里面每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,它们共享一些资源和权限,同时拥有私有资源 .

比如 家,你的姐姐弟弟(不同的用户)属于同一个家(用户组),你们可以共同拥有这个家(共享资源),爸妈对待你们都一样(共享权限),你的私密的东西 ,别人未经允许不能查看(私有资源和权限)。

一个用户是可以属于多个用户组的,如 : 你既属于家庭,又属于学校 或 公司。

查看 用户的用户组

groups 命令

groups test

groups

其中冒号之前表示用户,后面表示该用户所属的用户组。

这里可以看到 test用户属于 test用户组,每次新建用户如果不指定用户组的话,默认会自动创建一个与用户名相同的用户组(差不多就相当于家长的意思)。

默认情况下在 sudo 用户组里的可以使用 sudo 命令获得 root 权限。

test 用户也可以使用 sudo 命令,为什么这里没有显示在 sudo 用户组里呢?

可以查看下 /etc/sudoers.d/test 文件 :

etc/sudoers.d

etc/sudoers.d

我们在 /etc/sudoers.d 目录下创建了这个文件,

从而给 test 用户赋予了 sudo 权限:

查看 /etc/group 文件

cat /etc/group | sort

image-20200826150625793

这里 cat 命令用于读取指定文件的内容并打印到终端输出,后面会详细讲它的使用。 | sort 表示将读取的文本进行一个字典排序再输出,然后你将看到如下一堆输出,你可以在最下面看到 shiyanlou 的用户组信息:

没找到?没关系,你可以使用 grep 命令过滤掉一些你不想看到的结果:

cat /etc/group | grep -E "test"
cat /etc/group | grep -E "cpucode"

image-20200826150524508

/etc/group 文件格式说明

/etc/group 的内容包括用户组(Group)、用户组口令、GID(组 ID) 及该用户组所包含的用户(User),每个用户组一条记录。格式如下:

group_name : password : GID : user_list

password 字段为一个 x,表示密码不可见

这里需要注意,如果用户的 GID == 用户组的 GID,那么最后一个字段 user_list 就是空的,

这里的 GID 是指用户默认所在组的 GID,可以使用 id 命令查看。

id

将其它用户加入 sudo 用户组

默认情况下新创建的用户是不具有 root 权限的,也不在 sudo 用户组,可以让其加入 sudo 用户组从而获取 root 权限:

su -l test
sudo ls

image-20200826152836633

会提示 test 不在 sudoers 文件中,意思就是 test 不在 sudo 用户组中

使用 usermod 命令可以为用户添加用户组,同样使用该命令你必需有 root 权限,你可以直接使用 root 用户为其它用户添加用户组,或者用其它已经在 sudo 用户组的用户使用 sudo 命令获取权限来执行该命令。

这里我用 cpucode 用户执行 sudo 命令将 test 添加到 sudo 用户组,让它也可以使用 sudo 命令获得 root 权限

切换回 cpucode 用户 :

su - cpucode

image-20200826153604518

exit

image-20200826153640481

或 直接关闭当前终端打开一个新的终端

groups test
sudo usermod -G sudo test
groups test

image-20200826153314463

然后你再切换回 test 用户,现在就可以使用 sudo 获取 root 权限了

su - test
sudo ls /

image-20200826154039642

删除用户和用户组
sudo deluser test --remove-home

使用 --remove-home 参数在删除用户时候会一并将该用户的工作目录一并删除。

如果不使用那么系统会自动在 /home 目录为该用户保留工作目录

cat /etc/group | grep "test"
ls /home

这个地方有一个错误, 我搜索一下, 并不知道这个原因, 如果你知道, 希望你能告诉我, 谢谢 !

image-20200826155822302

找到原因 :

删除这个用户

sudo userdel -r test

杀死这个进程

sudo kill -9 17490

image-20200826160747068

image-20200826160709455

linux文件权限

文件权限就是文件的访问控制权限,即哪些用户和组群可以访问文件以及可以执行什么样的操作。

Unix/Linux 系统是一个典型的多用户系统,不同的用户处于不同的地位,对文件和目录有不同的访问权限。

\为了保护系统的安全性,Unix/Linux 系统除了对用户权限作了严格的界定外,还在用户身份认证、访问控制、传输安全、文件读写权限等方面作了周密的控制。

在 Unix/Linux 中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。

查看文件权限

ls 命令,用它来列出并显示当前目录下的文件

ls -l

image-20200826161048127

image-20200826162424821

文件类型和权限 :

img

  • 文件类型

关于文件类型,就必需时刻牢记 Linux 里面一切皆文件,就是因为这一点才有了设备文件( /dev 目录下有各种设备文件,大都跟具体的硬件设备相关)这一说。

socket:网络套接字

pipe : 管道

软链接文件:链接文件是分为两种的,另一种是“ 硬链接 ”(软链接 等同于 Windows 上的快捷方式)。

  • 文件权限

读权限,表示你可以使用 cat <file name> 之类的命令来读取某个文件的内容;

写权限,表示你可以编辑和修改某个文件的内容;

执行权限,通常指可以运行的二进制程序文件或者脚本文件,如同 Windows 上的 exe 后缀的文件,不过 Linux 上不是通过文件后缀名来区分文件的类型。

你需要注意的一点是,一个目录同时具有读权限和执行权限才可以打开并查看内部文件,而一个目录要有写权限才允许在其中创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息。

所有者权限,这一点相信你应该明白了,至于所属用户组权限,是指你所在的用户组中的所有其它用户对于该文件的权限,

比如,你有一个 iPad,那么这个用户组权限就决定了你的兄弟姐妹有没有权限使用它破坏它和占有它。

  • 链接数

链接到该文件所在的 inode 结点的文件名数目(关于这个概念涉及到 Linux 文件系统的相关概念知识,不在本课程的讨论范围,感兴趣的用户可以查看 硬链接和软链接的联系与区别)。

  • 文件大小

以 inode 结点大小为单位来表示的文件大小,你可以给 ls 加上 -lh 参数来更直观的查看文件的大小。

明白了文件权限的一些概念,我们顺带补充一下关于 ls 命令的一些其它常用的用法:

  • 显示除了 .(当前目录)和 ..(上一级目录)之外的所有文件,包括隐藏文件(Linux 下以 . 开头的文件为隐藏文件)。
$ ls -a

image-20200826161337430

当然,你可以同时使用 -a-l 参数:

ls -al

image-20200826161413484

查看某一个目录的完整属性,而不是显示目录里面的文件属性:

ls -dl <目录名>

显示所有文件大小,并以普通人类能看懂的方式呈现:

ls -asSh

image-20200826161435442

其中小 s 为显示文件大小,大 S 为按文件大小排序,若需要知道如何按其它方式排序,可以使用 man ls 命令查询。

image-20200826161523882

image-20200826161536552

变更文件所有者
修改文件权限

\

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/21167.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang | Leetcode Golang题解之第123题买卖股票的最佳时机III

题目&#xff1a; 题解&#xff1a; func maxProfit(prices []int) int {buy1, sell1 : -prices[0], 0buy2, sell2 : -prices[0], 0for i : 1; i < len(prices); i {buy1 max(buy1, -prices[i])sell1 max(sell1, buy1prices[i])buy2 max(buy2, sell1-prices[i])sell2 m…

C++的List

List的使用 构造 与vector的区别 与vector的区别在于不支持 [ ] 由于链表的物理结构不连续,所以只能用迭代器访问 vector可以排序,list不能排序(因为快排的底层需要随机迭代器,而链表是双向迭代器) (算法库里的排序不支持)(需要单独的排序) list存在vector不支持的功能 链…

网站建设方案书

网站建设方案书是指一份书面计划&#xff0c;用于描述关于建立和运营一个网站所需的资源和步骤。这份方案书的目的是确保网站建设过程中的顺利和成功&#xff0c;并最终获得对其所期望的效果。 在撰写方案书时&#xff0c;我们应该遵循以下几个步骤&#xff1a; 一、确定网站的…

[SWPUCTF 2023 秋季新生赛]Junk Code

方法一&#xff1a;手动去除 将所有E9修改为90即可 方法二&#xff1a;花指令去除脚本 start_addr 0x0000000140001454 end_addr 0x00000001400015C7 print(start_addr) print(end_addr) for i in range(start_addr,end_addr):if get_wide_byte(i) 0xE9:patch_byte(i,0x9…

自定义类型:结构体类型

在学习完指针相关的知识后将进入到c语言中又一大重点——自定义类型&#xff0c;在之前学习操作符以及指针时我们对自定义类型中的结构体类型有了初步的了解&#xff0c;学习了结构体类型的创建以及如何创建结构体变量&#xff0c;还有结构体成员操作符的使用&#xff0c;现在我…

win+mac通用的SpringBoot+H2数据库集成过程。

有小部分大学的小部分老师多毛病&#xff0c;喜欢用些晦涩难搞的数据库来折腾学生&#xff0c;我不理解&#xff0c;但大受震撼。按我的理解&#xff0c;这种数据库看着好像本地快速测试代码很舒服&#xff0c;但依赖和数据库限制的很死板&#xff0c;对不上就是用不了&#xf…

Linux基础之进程等待

目录 一、进程等待的基本概念 二、进程等待的重要性 三、进程等待的方法 四、获取子进程status 五、options选项 一、进程等待的基本概念 进程等待是指一个进程在执行过程中暂时停止&#xff0c;并等待某个条件满足后再继续执行的状态。这种等待通常是由于某些事件需要发生…

qt按钮的autoRepeat属性和default属性

autoRepeat属性&#xff1a;按住按钮不松&#xff0c;表示一直在点击按钮 default属性&#xff1a;点击Enter键表示在点击按钮

无缝接入GPT-4o:智创聚合API平台的创新与实践

在2024年5月13日&#xff0c;美国开放人工智能研究中心&#xff08;OpenAI&#xff09;发布了最新版本的ChatGPT——GPT-4o。这一更新标志着人工智能领域的又一重大进步&#xff0c;引起了全球科技界的广泛关注。GPT-4o的“o”代表“omni”&#xff08;全能&#xff09;&#x…

动态规划算法:背包问题

背包问题概述 背包问题 (Knapsack problem) 是⼀种组合优化的 NP完全问题 。 问题可以描述为&#xff1a;给定⼀组物品&#xff0c;每种物品都有⾃⼰的重量和价格&#xff0c;在限定的总重量内&#xff0c;我们如何选择&#xff0c;才能使得物品的总价格最⾼。 根据物品的个…

【刷题】初探递归算法 —— 消除恐惧

送给大家一句话&#xff1a; 有两种东西&#xff0c; 我对它们的思考越是深沉和持久&#xff0c; 它们在我心灵中唤起的惊奇和敬畏就会日新月异&#xff0c; 不断增长&#xff0c; 这就是我头上的星空和心中的道德定律。 -- 康德 《实践理性批判》 初探递归算法 1 递归算…

AI预测体彩排3采取888=3策略+和值012路一缩定乾坤测试6月2日预测第9弹

今天继续基于8883的大底进行测试&#xff0c;今天继续测试&#xff0c;好了&#xff0c;直接上结果吧~ 首先&#xff0c;888定位如下&#xff1a; 百位&#xff1a;5,4,7,3,2,9,1,0 十位&#xff1a;4,6,5,7,2,9,1,0 个位&#xff1a;3,4,2,5,…

车流量智能监测识别摄像机

车流量智能监测识别摄像机是一项革命性的技术&#xff0c;正在为城市交通管理带来巨大改变。这种摄像机利用先进的人工智能和图像识别技术&#xff0c;能够实时监测道路上的车流量&#xff0c;并对车辆进行智能识别和分类&#xff0c;从而实现对交通流量的精准监测和管理。 与传…

Day02 设计首页导航条

设计首页导航条 导航条的样式&#xff0c;主要是从Material DesignThemes UI 拷贝过来修改的,项目用了这个UI组件库。就看项目需要什么&#xff0c;就去源码拷过来使用。 直接下载源码&#xff0c;编译运行就可以看到Demo 了 下载后且正常编译成功了&#xff0c;是能正常跑起来…

iOS——类与对象底层探索

类和对象的本质 当我们使用OC创建一个testClass类并在main函数创建它的实例对象的时候&#xff0c;OC的底层到底是什么样的呢&#xff1f; 首先&#xff0c;我们要了解OC对象的底层结构&#xff0c;那么我们就得知道&#xff1a;OC本质底层实现转化其实都是C/C代码。 使用下面…

spoon工具的常用基础操作

一些常用转换工具 1、emp表输入->excel表输出 emp表输入&#xff0c;可以进行预览查看数据有没有过来excel表输出 成功执行后&#xff0c;可以到保存的excel位置进行查看。 2、excel输入->表输出 运行转换后可以在oracle进行查看是否有成功创建这个表 3、对部门最高…

【JAVA WEB实用与优化技巧】Maven自动化构建与Maven 打包技巧

文章目录 一、MavenMaven生命周期介绍maven生命周期命令解析 二、如何编写maven打包脚本maven 配置详解setting.xml主要配置元素setting.xml 详细配置 使用maven 打包springboot项目maven 引入使用package命令来打包idea打包 三、使用shell脚本自动发布四、使用maven不同环境配…

【协议开发系列】梳理关于TCP和UDP两种协议的区别和使用场景

起源 前二天项目上在核对外部对接服务的五元组列表的时候&#xff0c;有一位客户提问对于同样的服务同时支持tcp和udp二种方式&#xff0c;有什么优点和缺点&#xff0c;应该如何选择&#xff1f;这个问题突然让我愣了一下&#xff0c;确实好久没有“温故”了&#xff0c;相关…

商业新闻|当我们在讨论卖车时我们在讨论什么?

‍‍今天是2024年第22周 这是Yura「输出倒逼输入」计划的第10篇文章 全年进度&#xff1a;10/52 01 投资人为什么不断入局烧钱又亏损的新能源&#xff1f; 造车的烧钱速度超乎想象。除了最近的小米&#xff0c;这些年国内大大小小的玩家好像都在以不同的形式或直接或间接的参与…

【视频创作思维流程】教你从0培养视频创作思维

【视频创作思维流程】教你从0培养视频创作思维 1.创作认知2.培养自己的想象力2.1通过音乐辅助闭上眼睛想象2.2多看多见多模仿 3 视频脚本3.1简单的脚本3.2复杂脚本 4.拍摄预见能力4.1拍摄预见力思维用于转场4.2拍摄预见力思维给特效制作留住空间4.2拍摄预见力思维给字幕制作留住…