Linux基础(一)

tech2022-09-05  95

Linux基础(一)

列出文件及目录

ls(list)是一个非常有用的命令,用来显示当前目录下的内容。配合参数的使用,能以不同的方式显示目录内容。 格式:ls [参数] [路径或文件名] 参数: -a 显示所有文件或目录(包含隐藏的文件) -l 显示文件详细信息 常用: 在linux中以 . 开头的文件都是隐藏的文件 ls ls -a 显示所有文件或目录(包含隐藏的文件) ls -l 列出当前目录下的文件列表,以详细信息展示,可以缩写为ll ls -l / 列出根目录下的文件列表,以详细信息展示

切换目录

cd(change directory)命令可以用来切换目录 格式: cd <路径或目录名> 常用: cd app 切换到app目录 cd .. 切换到上一层目录 cd / 切换到系统根目录 cd ~ 切换到用户主目录 cd - 切换到上一个所在目录

创建目录

mkdir(make directory)命令可用来创建子目录。 格式: mkdir [参数] <目录路径或目录名> 参数: -p 级联创建目录结构 常用: mkdir app 在当前目录下创建app目录 mkdir –p app2/test 级联创建aap2以及test目

删除目录

rmdir(remove directory)命令可用来删除“空”的子目录 格式: rmdir <目录路径或目录名> 常用: rmdir app 删除app目录

2. 文件操作

查看文件内容

cat 用于显示文件的内容。 格式: cat [参数] <文件名> 参数: -n 对输出的所有行编号 常用 cat yum.conf cat -n yum.conf more 一般用于要显示的内容会超过一个画面长度的情况。按空格键显示下一个画面。回车显示下一行内容。 格式: more [参数] <文件名> 常用: more yum.conf 快捷键: 空格 翻页 确定 下一行 q 退出查看 less 用法和more类似,不同的是less可以通过PgUp、PgDn键来控制上下翻页。 格式: more [参数] <文件名> 常用: less yum.conf 快捷键: PgUp 上一页 PgDn 下一页 q 退出查看 head 查看文件的前面部分,默认显示前10行 格式: more [参数] <文件名> 参数: -n 显示每个文件的前n行内容 常用: head yum.conf 显示文件的前10行 head -100 yum.conf 显示文件的前100行 tail 查看文件的后面部分,默认显示最后10行 格式: tail [参数] <文件名> 参数: -n 显示每个文件的后n行内容 -f 即时输出文件变化后追加的数据。 常用: tail yum.conf 显示文件的最后10行 tail -100 yum.conf 显示文件的最后100行 tail -f yum.conf 显示文件的最后10行,并且监控文件的变化,输出文件变化后追加的数据。

过滤文件内容

grep 查找符合条件的字符串。 格式: grep <text> [参数] <文件名> 参数: -i 忽略大小写 -n 输出的同时打印行号 -B 显示前N行的内容 -A 显示后N行的内容 --color 高亮展示查询关键字 常用: grep headers install.log 在文件中查找headers grep -B 10 headers install.log 在文件中查找headers,显示前10行的内容 grep -A 10 headers install.log 在文件中查找headers,显示后10行的内容 grep -A 10 --color headers install.log 在文件中查找headers,高亮展示关键字

创建空文件

touch 用于创建一个空文件 格式: touch <文件名> 常用: touch aa.txt

删除文件

rm 用于删除文件或者目录 格式: rm [参数] <文件名> 参数: -f 强制删除。忽略不存在的文件,不提示确认 -r 递归删除目录及其内容 常用: rm a.txt 删除a.txt文件,输入y/n,y确认删除,n不删除 rm -f a.txt 不询问,直接删除 rm -r aa 删除aa目录,每个目录及文件都提示 rm -rf aa 不询问递归删除aa目录 rm -rf * 删除当前目录下所有文件 rm -rf /* 删除根目录下所有文件(自杀)

文件编辑

vi/vim 用于编辑文件, 一共有三种模式:命令行模式、插入模式、底行模式。 格式: vi/vim [参数] <文件名> 命令行模式: 用户在命令行模式可以按一些快捷键达到快速输入的目的,例如复制,粘贴,删除,插入等 插入模式: 用户可以在插入模式对文件内容进行编辑 底行模式: 用户可以底行模式输入一些命令,对文件进行操作,例如:保存退出,不保存退出,查找等 用户使用vi/vim命令编辑文件,刚开始进入到命令行模式,之后可以使用命令来切换模式 命令行模式-->插入模式: i 在当前位置插入 I 在当前行首插入 a 在当前位置后插入 A 在当前行尾插入 o 在当前行之后插入一行 O 在当前行之前插入一行 插入模式-->命令行模式: Esc 从插入模式切换到命令行模式 命令行模式-->底行模式: :(冒号) 从命令行模式切换到底行模式 命令行模式快捷键: dd 快速删除一行 yy 拷贝当前行 nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。 p 在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。 P 在当前行前粘贴 底行模式命令: wq 保存退出 q! 强制退出并忽略所有更改 e! 放弃所有修改,并打开原来文件。 /text 查找text,按n健查找下一个,按N健查找前一个。

3. 通用文件或目录操作

复制文件或目录

cp(copy) 将源文件复制至目标文件,或将多个源文件复制至目标目录。 格式: cp [参数] 源目录或文件 目标目录或文件 参数: -r 递归复制目录及其子目录内的所有内容 常用: cp install.log install.log.bak 将install.log复制为install.log.bak文件 cp install.log aaa/ 将install.log文件复制到当前目录下的aaa目录下 cp install.log bbb/install.log.bak 将install.log文件复制到当前目录下的bbb目录下,改名为install.log.bak cp aaa -r bbb/ 递归复制aaa目录及子目录的所有内容到bbb目录下 cp aaa -r bbb/ccc 递归复制aaa目录及子目录的所有内容到bbb目录下,改名为ccc 复制文件,如果后一个参数是目录,则复制文件到指定目录 复制文件,如果后一个参数是文件,则复制文件到指定路径,并改名 复制目录,如果后一个参数是已经存在的目录,则复制目录到指定目录下 复制目录,如果后一个参数是不存在的目录,则复制目录到指定路径下,并改名

移动文件或目录

mv(move) 将源文件重命名为目标文件,或将源文件移动至指定目录。 格式: mv 源目录或文件 目标目录或文件 常用: mv install.log install.log.bak 将install.log重命名为install.log.bak mv install.log aaa/ 将install.log文件移动到当前目录下的aaa目录下 mv install.log bbb/install.log.bak 将install.log文件移动到当前目录下的bbb目录下,改名为install.log.bak mv aaa bbb/ 将aaa目录移动到bbb目录下 mv aaa bbb/ccc 将aaa目录移动到bbb目录下,重命名为ccc 移动文件,如果后一个参数是目录,则移动文件到指定目录 移动文件,如果后一个参数是文件,则移动文件到指定路径,并重命名 移动目录,如果后一个参数是已经存在的目录,则移动目录到指定目录下 移动目录,如果后一个参数是不存在的目录,则移动目录到指定路径下,并重命名

打包压缩和解压缩

tar 命令能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。 格式: tar [参数] <文件或目录列表> 参数: -c: 创建一个新tar文件 -v: 显示运行过程的信息 -f: 指定文件名 -z: 调用gzip压缩命令进行压缩 -x: 解开tar文件 -C: 指定解压路径 常用: tar –cvf aaa.tar ./* 将当前目录下的所有文件打包为aaa.tar tar –zcvf aaa.tar.gz ./* 将当前目录下的所有文件打包压缩为aaa.tar.gz tar –xvf aaa.tar 将aaa.tar提取到当前目录 tar -xvf aaa.tar.gz -C /usr/aaa 将aaa.tar.gz解压到/usr/aaa目录

4. 其他常用命令

重定向输出

> 重定向输出,覆盖原有内容 >> 重定向输出,又追加功能 常用: ifconfig > ifconfig.txt 将ifconfig命令的结果输出到 ifconfig.txt文件中 ifconfig >> ifconfig.txt 将ifconfig命令的结果追加到 ifconfig.txt文件中

管道

管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。 示例: ls --help | more 分页查询帮助信息 ps –ef | grep java 查询名称中包含java的进程

其他

1. pwd 查看当前工作目录 2. ll -h 友好显示文件大小 3. wget 下载资料

.tar ./* 将当前目录下的所有文件打包为aaa.tar tar –zcvf aaa.tar.gz ./* 将当前目录下的所有文件打包压缩为aaa.tar.gz tar –xvf aaa.tar 将aaa.tar提取到当前目录 tar -xvf aaa.tar.gz -C /usr/aaa 将aaa.tar.gz解压到/usr/aaa目录

### 4. 其他常用命令 #### 重定向输出

重定向输出,覆盖原有内容

重定向输出,又追加功能

常用: ifconfig > ifconfig.txt 将ifconfig命令的结果输出到 ifconfig.txt文件中 ifconfig >> ifconfig.txt 将ifconfig命令的结果追加到 ifconfig.txt文件中

#### 管道

管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。 示例: ls --help | more 分页查询帮助信息 ps –ef | grep java 查询名称中包含java的进程

#### 其他 pwd 查看当前工作目录ll -h 友好显示文件大小wget 下载资料
最新回复(0)