前言
在前边还是先来说下,为什么要学习linux操作,学习linux可以干嘛。
现在在互联网上大家看到的各种网页应用app等,如果学过前端的同学可能知道,这些我们看到的页面布局还有很多功能,都是前端实现的,这是前端的内容。但是页面或者app里边的数据,都是有一个统一的服务器作为后端,这个服务器我们称作server,网页前端通过一个链接传给server,server在通过传递一堆字符串给前端,让前端渲染数据等东西出来,而百分之90的server都是linux操作系统,所以如果想自己搭载一个服务器去开发应用或者到企业去工作,就需要掌握linux。其实Linux在文件系统和常用命令,进行的一些操作都是和window差不多,都是操作一下文件,只不过Linux没有图形界面,只有一个终端的小黑框。
一、文件系统
根目录: 在Linux里面就是 /
,在linux下分为两种用户一种是root用户,一种是普通用户,在root用户下可以干任何事情,可以删除任何文件,所以要谨慎使用root用户。
家目录: 在Linux里面就是 ~/
,在家目录下就是普通用户,我们一般操作都是在家目录下。
下面就是根目录的一些内容,里面包括了很多的文件,比如lib就是储存库的地方,而home就在root下面。
补充:点为 .
当前目录,点点为..
上级目录
绝对路径: 带斜杠的路径,比如 cd /home/acs/tmp
可以理解成从用户路径开始描述
相对路径: 不带斜杠的路径,比如 cd tmp
从当前路径开始描述
二、常用操作命令
ctrl c
:取消命令,并且换行(输入很长的乱码想取消时直接ctrl c)
ctrl u
:清空本行命令
tab
键:可以补全命令和文件名,如果补全不了快速按两下 tab 键,可以显示备选选项、
ls查看命令
ls
: 列出当前目录下所有文件,蓝色的是文件夹,白色的是普通文件,绿色的是可执行文件。
ls -l
会显示详细信息
ls -lh
会将数据大小显示得更人性化,比如 4096 会改进成 4.0k。
ls -a
会将隐藏文件(以.开头的文件)显示出来。
ls *.txt -l | wc -l
查看总共有多少个 txt 文件。
pwd
:显示当前路径
cd进入命令
cd
: 直接进入(返回)家目录
cd XXX
: 进入XXX目录下, cd ..
返回上层目录。
cd -
返回上次呆过的目录。
cp复制命令
cp a/tmp.txt b
:将 a 文件夹下的 tmp.txt 文件复制到 b 中。
cp a/tmp.txt b/tmp2.txt
:将 a 文件夹下的 tmp.txt 文件复制粘贴到 b 中并且重命名为 tmp2.txt。
cp a b -r
:将目录 a 整个复制进目录 b 中,记得要加参数 -r。
cp a c - r
:将 a 复制一份并命名成 c。(和上面的区别在于,有文件夹b时,a整个文件夹全部进入b。没有文件夹c时,a整个文件夹复制到当前目录并重命名为c)
mkdir创建文件夹
mkdir XXX
: 创建目录XXX
mkdir /home/acs/a/b
:用绝对路径创建
mkdir a/b/c -p
:批量创建a文件夹里有b,b里有c。
touch XXX
:创建一个文件;(注意文件还是文件夹)
rm删除命令
rm XXX
:删除普通文件,写多个文件名就同时删多个文件;
rm XXX -r
:删除文件夹,支持正则表达式,比如 rm *.txt
删除所有的.txt文件,rm dir_* -r
把所有名叫 dir_的文件夹删除
rm a/*
:把a文件夹中的所有文件都删除。
rm * -r
:把所有文件以及文件夹都删除。
rm -f
:删除被保护的文件
rm /* -rf
这个千万别执行,会删掉系统全部库
mv转移或重命名命令
mv a/tmp.txt b/
:将 a 里的tmp.txt文件移动到 b 文件夹中,和cp命令一样,XXX和YYY可以是一个路径;重命名也是用这个命令
mv b/tmp.txt a/tmp2.txt
:将 b 里的 tmp.txt 文件移动到 a文件夹里,并且重命名。
mv tmp2.txt tmp.txt
:实现的效果等于同命名
cat XXX
:展示文件XXX中的内容
复制文本: windows/Linux下:Ctrl + insert
,Mac下:command + c
粘贴文本: windows/Linux下:Shift + insert
,Mac下:command + v
history
显示历史指令
方向盘上的上下可以找历史命令,方便操作
总结
这就是linux最基本的操作内容了,本文只列举了一些非常常用的操作,适合刚接触的同学,命令操作太多了,我们只需要掌握常用的,在后续工作如果需要的话在去查找.