3.Linux笔记
前言:Linux的常用命令
3.1 Linux基本命令
进入terminal (命令行终端)可见如下形式的语句
[omm@bigdata opt]$
[root@bigdata opt]#
-
omm or root 当前的操作用户;
-
bigdata 当前用户所在的主机;
-
opt 当前用户在哪个目录;
-
$ 代表当前是普通用户操作;
-
# 代表的当前用户为root;
3.1.1 语法模板
命令格式: 命令 【-选项】【参数:Linux系统的目录】
例子: ls -la /etc
3.1.2 常见命令
-
cd命令
解释:切换目录,使用率较高,change directory缩写
语法:cd 【文件夹目录】
举例:
cd .. 回到上一级目录
cd ../.. 返回上两级目录
cd - 返回进入此目录之前所在的目录
cd / 切换到根目录
cd ~切换到用户主目录
备注:Tab 键自动补全,只需要写地址的前面几个字母,就可以按Tab键,自动帮我们补全后面的内容
-
ls命令
解释:用来显示目标文件列表,使用率高 ,list的缩写,这个命令主要掌握命令中的几个选项
语法:ls 【选项】 【参数】
举例:
ls -a
ls -l
ls -la
ll等同于ls -l
备注:
-a 显示所有文件,包括隐藏文件,a -> all
-l 详细信息显示,l -> long
drwxr-xr-x. 2 omm omm 6 Feb 16 22:16 Desktop
drwxr-xr-x. 2 omm omm 6 Feb 16 22:16 Documents
格式解释
第一部分:drwxr-xr-x
位数 | 涵义 |
---|---|
1 | 文件类型,- 表示是文件,d 表示目录 |
[2,4] | u所有者 user |
[5,7] | g所属组 group |
[8,10] | o 其他人 other |
字符 | 权限 | 文件 | 目录 |
---|---|---|---|
r | 读 | 查看文件内容 | 列出目录中的内容 |
w | 写 | 修改文件内容 | 在目录中创建、删除文件 |
x | 执行 | 执行文件 | 进入目录 |
第二部分:数值
2 引用计数,表示文件被引用过多少次
第三部分:omm omm
第一个omm表示所有者,第二个omm表示所属组
第四部分:数值
表示文件字节大小,不带单位表示字节 6
第五部分:时间
最后修改时间 Feb 16 22:16
第六部分:文件名
文件名 Desktop
-
clear命令
解释:清屏,快键键ctrl + l
语法:clear
-
pwd命令
解释:以绝对路径方式显示当前所在的目录
语法:pwd
备注:绝对路径:绝对路径相对于/(根目录);相对路径:相对于当前所在的目录;
-
su命令
解释:切换用户,switch user缩写
语法:su - [切换到的目标用户]
切换root用户
su - root 切换到root用户,习惯上写 su -
切换普通用户
su - username
备注:从root用户切换为普通用户,不需要普通用户的密码,从普通用户切换到普通用户,需要被切换的用户的密码
备注:有"-" ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,用"su -"命令将环境变量也一起带过去,就像和root登录一样。
-
mkdir命令
解释:用于创建目录,make directories缩写
语法:mkdir 【选项】 【参数】
选项:-p或--parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;
参数:指定要创建的目录列表,多个目录之间用空格隔开。
注意:权限问题与目录不存在问题
-
touch命令
解释:创建一个空文件
语法:touch 【文件名】
注意:创建文件时,文件名不要有空格,不然就是创建了两个文件,如果要有空格时,可以使用引号括起来。
-
rmdir命令
解释:删除空目录
-
rm命令
解释:删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉
语法:rm 【选项】 【参数】
备注:
-f:强制删除文件或目录;
-r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
指定被删除的文件列表,如果参数中含有目录则必须加上-r或者-R选项。
rm * 删除当前目录下除隐含文件外的所有文件和子目录 (这样做是非常危险的 )
注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它。所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除。
-
mv命令
解释:对文件或目录重命名,或者将文件从一个目录移到另一个目录中。 这种移动是剪切目录或文件
语法:mv [source][target]
备注:source表示源文件或目录,target表示目标文件或目录。
-
如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。(剪切)
-
如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。
-
如果源文件和目标文件在同一个目录下,mv的作用就是改文件名
-
当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。 mv a.txt test b.txt dest
-
cp命令
解释:将一个或多个源文件或者目录复制到指定的目的文件或目录
语法:cp -选项 [原文件或目录][目标目录]
举例:cp test.txt ../file.txt 复制到上一级目录且文件名为file.txt
备注:-R/r:递归复制,将指定目录下的所有文件与子目录一并赋值
源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R或-r选项; 目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录
cp执行时报错:omitting directory "xxx" 说明xxx目录下面还有目录,不能直接拷贝,要使用-r
-
cat命令
解释:查看文件内容(推荐使用查看小文件)
语法:cat -n 【文件名】
举例:cat /etc/passwd cat -n /etc/passwd
备注:-n 显示行号
-
more命令
解释:查看文件内容
语法:more【文件名】
举例:more /etc/services
备注:
- 空格或f 翻页(一页一页的往后显示)
- 回车键 一行一行的看
- q 或 Q 退出
-
head命令
解释:查看文件的前n(正整数)行
语法:head -n [文件名]
举例:head -50 /etc/services head /etc/services
备注:-不加-n选项,表示默认查看前10行的内容
-
tail命令
解释:显示文件的后面几行 ,默认10行
语法:tail -n [文件名]
举例:tail -50 /etc/services
备注:-n 指定行数
-
vim与vi文件编辑器
解释:创建新的文件
语法:vim 【文件名】
举例:
- 打开或新建文件,并将光标至于第一行首:vi /etc/my.cnf
- 打开文件,并将光标移至最后一行行首: vi + /etc/my.cnf
- 打开文件,并将光标置于第n行首:vi +n /etc/my.cnf
- 打开文件,并将光标置于第一个与pattern匹配的串处:vi +/pattern filename
备注:
三个模式:
1.命令模式,刚进入文件的时候的状态,或者是在插入模式按Esc;
2.插入模式(按a或i进入)(按Esc退出),会在文件左下角出现“--INSERT--”,可编辑文件内容的状态
3.最后行模式(在命令模式下输入:)
选项: w(ware) 保存, q(quit) 退出, !强制操作
三个选项可以联合使用:
:wq!强制保存并退出
:w保存
:w! 强制保存
:q退出
:q! 强制退出
vi与vim都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有 指令,而且还有一些新的特性在里面。